diff --git a/.Rproj.user/5271889B/pcs/files-pane.pper b/.Rproj.user/5271889B/pcs/files-pane.pper
index 0a64530..5a5ac98 100644
--- a/.Rproj.user/5271889B/pcs/files-pane.pper
+++ b/.Rproj.user/5271889B/pcs/files-pane.pper
@@ -1,5 +1,5 @@
 {
-    "path" : "~/GitHub/posterdown/inst/rmarkdown/templates/posterdown_memoir",
+    "path" : "~/GitHub/posterdown/inst/rmarkdown/templates/posterdown_memoir/skeleton",
     "sortOrder" : [
         {
             "ascending" : false,
diff --git a/.Rproj.user/5271889B/pcs/source-pane.pper b/.Rproj.user/5271889B/pcs/source-pane.pper
index 70829f6..1743e40 100644
--- a/.Rproj.user/5271889B/pcs/source-pane.pper
+++ b/.Rproj.user/5271889B/pcs/source-pane.pper
@@ -1,3 +1,3 @@
 {
-    "activeTab" : 1
+    "activeTab" : 0
 }
\ No newline at end of file
diff --git a/.Rproj.user/5271889B/persistent-state b/.Rproj.user/5271889B/persistent-state
index 9773417..94cac94 100644
--- a/.Rproj.user/5271889B/persistent-state
+++ b/.Rproj.user/5271889B/persistent-state
@@ -1,6 +1,6 @@
 build-last-errors="[]"
 build-last-errors-base-dir="~/GitHub/posterdown/"
-build-last-outputs="[{\"output\":\"==> devtools::document(roclets=c('rd', 'collate', 'namespace'))\\n\\n\",\"type\":0},{\"output\":\"Updating posterdown documentation\\r\\n\",\"type\":2},{\"output\":\"Writing NAMESPACE\\r\\n\",\"type\":1},{\"output\":\"Loading posterdown\\r\\n\",\"type\":2},{\"output\":\"Writing NAMESPACE\\r\\n\",\"type\":1},{\"output\":\"Documentation completed\\n\\n\",\"type\":1},{\"output\":\"==> Rcmd.exe INSTALL --preclean --no-multiarch --with-keep.source posterdown\\n\\n\",\"type\":0},{\"output\":\"* installing to library 'C:/Users/Brent Thorne/Documents/R/win-library/3.5'\\r\\n\",\"type\":1},{\"output\":\"* installing *source* package 'posterdown' ...\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** R\\r\\n\",\"type\":1},{\"output\":\"** inst\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** byte-compile and prepare package for lazy loading\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** help\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"  converting help for package 'posterdown'\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"*** installing help indices\\r\\n\",\"type\":1},{\"output\":\"    finding HTML links ...\",\"type\":1},{\"output\":\"    posterdown                              html  \\r\\n\",\"type\":1},{\"output\":\"    posterdown_memoir                       html  \\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\" done\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** building package indices\\r\\n\",\"type\":1},{\"output\":\"** testing if installed package can be loaded\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"* DONE (posterdown)\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"In R CMD INSTALL\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1}]"
+build-last-outputs="[{\"output\":\"==> devtools::document(roclets=c('rd', 'collate', 'namespace'))\\n\\n\",\"type\":0},{\"output\":\"Updating posterdown documentation\\r\\n\",\"type\":2},{\"output\":\"Writing NAMESPACE\\r\\n\",\"type\":1},{\"output\":\"Loading posterdown\\r\\n\",\"type\":2},{\"output\":\"Writing NAMESPACE\\r\\n\",\"type\":1},{\"output\":\"Documentation completed\\n\\n\",\"type\":1},{\"output\":\"==> Rcmd.exe INSTALL --preclean --no-multiarch --with-keep.source posterdown\\n\\n\",\"type\":0},{\"output\":\"* installing to library 'C:/Users/Brent Thorne/Documents/R/win-library/3.5'\\r\\n\",\"type\":1},{\"output\":\"* installing *source* package 'posterdown' ...\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** R\\r\\n\",\"type\":1},{\"output\":\"** inst\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** byte-compile and prepare package for lazy loading\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"** help\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"*** installing help indices\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"  converting help for package 'posterdown'\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"    finding HTML links ...\",\"type\":1},{\"output\":\"    posterdown                              html  \\r\\n\",\"type\":1},{\"output\":\"    posterdown_memoir                       html  \\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\" done\\r\\n\",\"type\":1},{\"output\":\"** building package indices\\r\\n\",\"type\":1},{\"output\":\"** testing if installed package can be loaded\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"* DONE (posterdown)\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1},{\"output\":\"In R CMD INSTALL\\r\\n\",\"type\":1},{\"output\":\"\",\"type\":1}]"
 compile_pdf_state="{\"errors\":[],\"output\":\"\",\"running\":false,\"tab_visible\":false,\"target_file\":\"\"}"
 files.monitored-path=""
 find-in-files-state="{\"handle\":\"\",\"input\":\"\",\"path\":\"\",\"regex\":true,\"results\":{\"file\":[],\"line\":[],\"lineValue\":[],\"matchOff\":[],\"matchOn\":[]},\"running\":false}"
diff --git a/.Rproj.user/5271889B/sources/per/t/76D8725 b/.Rproj.user/5271889B/sources/per/t/76D8725
new file mode 100644
index 0000000..530ff82
--- /dev/null
+++ b/.Rproj.user/5271889B/sources/per/t/76D8725
@@ -0,0 +1,22 @@
+{
+    "collab_server" : "",
+    "contents" : "",
+    "created" : 1544161898648.000,
+    "dirty" : false,
+    "encoding" : "UTF-8",
+    "folds" : "",
+    "hash" : "4107327377",
+    "id" : "76D8725",
+    "lastKnownWriteTime" : 1544111098,
+    "last_content_update" : 1544111098,
+    "path" : "~/GitHub/posterdown/inst/rmarkdown/templates/posterdown_memoir/skeleton/skeleton.Rmd",
+    "project_path" : "inst/rmarkdown/templates/posterdown_memoir/skeleton/skeleton.Rmd",
+    "properties" : {
+        "cursorPosition" : "17,176",
+        "scrollLine" : "14"
+    },
+    "relative_order" : 3,
+    "source_on_save" : false,
+    "source_window" : "",
+    "type" : "r_markdown"
+}
\ No newline at end of file
diff --git a/.Rproj.user/5271889B/sources/per/t/76D8725-contents b/.Rproj.user/5271889B/sources/per/t/76D8725-contents
new file mode 100644
index 0000000..07115ef
--- /dev/null
+++ b/.Rproj.user/5271889B/sources/per/t/76D8725-contents
@@ -0,0 +1,126 @@
+---
+title: 'Using \color{Red} `posterdown` \color{White} to generate reproducible conference posters via RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF workflow as well as long titles...'
+author: "Brent Thorne"
+bibliography: MyLibrary
+output: posterdown::posterdown_memoir
+---
+
+```{r, include=FALSE}
+knitr::opts_chunk$set(echo = FALSE, results = 'asis',fig.height = 3.5, fig.width = 4.5, out.width = "100%", warning = FALSE, fig.align = 'center', message = FALSE, dev='cairo_pdf')
+```
+
+# Introduction
+
+Welcome to `posterdown` ! This is my attempt to provide a semi-smooth workflow for those who wish to take their `RMarkdown` skills to the conference world. Many creature comforts frim `RMarkdown` are available in this package such as `Markdown` section notation, figure captioning, and even citations like this one [@holden_identifying_2012] The rest of this example poster will show how you can insert typical conference poster features into your own document. 
+
+# Study Site
+
+Here is a map made to show the study site using `ggplot2`, `ggspatial`, and `sf`. Lorem ipsum dolor sit amet, [@middleton_geological_nodate] consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Phasellus vestibulum lorem sed risus ultricies tristique nulla. Mauris vitae ultricies leo integer malesuada nunc vel risus commodo. Suspendisse potenti nullam ac tortor vitae. Enim nunc faucibus a pellentesque sit amet porttitor eget.  \vspace{15mm}
+
+```{r, fig.width=4.5, out.width="80%", fig.cap='This is a map of Canada, the ggspatial package is great for GIS folks in R!', cache=TRUE}
+library(ggplot2)
+library(ggspatial)
+library(ggthemes)
+library(sf)
+
+canada <- read_sf("data/Canada.geojson")
+
+
+ggplot() +
+  ggspatial::layer_spatial(canada, fill = "grey") +
+  ggspatial::annotation_north_arrow(location = "br", which_north = "true", style = north_arrow_nautical()) +
+  coord_sf() +
+  theme_solarized() +
+  NULL
+
+```
+
+
+# Objectives
+
+\large
+
+1. Easy to use reproducible poster design. 
+2. Integration with `RMarkdown`.
+3. Easy transition from `posterndown` to `thesisdown` or `rticles`
+
+\small
+
+# Methods
+
+This package uses the same workflow approach as the `RMarkdown` you know and love. Basically it goes from RMarkdown > Knitr > Markdown > Pandoc > Latex > PDF
+
+# Results
+
+```{r}
+library(kableExtra)
+library(ggplot2)
+
+data("iris")
+
+kable(iris[1:4,],align = "c", caption = "Tables are a breeze with Kable and Kable extra package!", booktabs = T) %>% 
+  kable_styling(latex_options = "striped")
+
+```
+
+\vspace{1in}
+
+```{r, out.width='75%', fig.width=4, fig.height=3, fig.cap='A typical plot using ggplot using the classic iris dataset.'}
+
+library(ggplot2)
+library(ggthemes)
+
+ggplot(data = iris, aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) +
+  geom_point() +
+  theme_fivethirtyeight() +
+  labs(x = "Sepal Length", y = "Sepeal Width") +
+  NULL
+
+```
+
+\vspace{1in}
+
+```{r, out.width='85%', fig.width=4.5, fig.height=4, fig.cap='Another typical plot using ggplot, this time with a different theme and r code chunk options for fig.width and fig.height.'}
+
+library(ggplot2)
+library(ggthemes)
+
+ggplot(data = iris, aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) +
+  geom_point() +
+  theme_hc() +
+  labs(x = "Sepal Length", y = "Sepeal Width") +
+  NULL
+
+```
+
+\vspace{1in}
+
+```{r, out.width='80%', fig.width=4.5, fig.align='center', echo=TRUE, fig.height=5, fig.cap='Another figure showing how base R plots might look on this poster!'}
+
+# Here is some code for people
+# to look at and be in awe of!!!!
+library(ggplot2)
+library(ggthemes)
+
+ggplot(data=iris,
+       aes(x = Sepal.Width,
+           y = Sepal.Length,
+           colour = Species)) +
+  geom_point() +
+  theme_stata() +
+  NULL
+
+```
+
+
+# Next Steps
+
+There is still **A LOT** of work to do on this package which include (but are note limited to): 
+
+- Better softcoding for front end user options in YAML such as `posterwidth: 45in`.
+- Images in the title section for logo placement which is a common attribut to posters as far as I have come to know.
+- Figure out compatiability with `natbib` which wasn't working during the initial set up.
+- MUCH BETTER PACKAGE DOCUMENTATION. For example, there is nothing in the README...
+- Include References section only if initiated by the user like in RMarkdown.
+
+\small
diff --git a/.Rproj.user/5271889B/sources/per/t/950DD430 b/.Rproj.user/5271889B/sources/per/t/950DD430
index 2a99fed..62d224e 100644
--- a/.Rproj.user/5271889B/sources/per/t/950DD430
+++ b/.Rproj.user/5271889B/sources/per/t/950DD430
@@ -5,15 +5,15 @@
     "dirty" : false,
     "encoding" : "UTF-8",
     "folds" : "",
-    "hash" : "2993177172",
+    "hash" : "3064033996",
     "id" : "950DD430",
-    "lastKnownWriteTime" : 1544125071,
-    "last_content_update" : 1544125071262,
+    "lastKnownWriteTime" : 1544161977,
+    "last_content_update" : 1544161977218,
     "path" : "~/GitHub/posterdown/inst/rmarkdown/templates/posterdown_memoir/resources/template.tex",
     "project_path" : "inst/rmarkdown/templates/posterdown_memoir/resources/template.tex",
     "properties" : {
-        "cursorPosition" : "165,6",
-        "scrollLine" : "153"
+        "cursorPosition" : "164,23",
+        "scrollLine" : "149"
     },
     "relative_order" : 1,
     "source_on_save" : false,
diff --git a/.Rproj.user/5271889B/sources/per/t/950DD430-contents b/.Rproj.user/5271889B/sources/per/t/950DD430-contents
index 03d94b1..9f6c8ae 100644
--- a/.Rproj.user/5271889B/sources/per/t/950DD430-contents
+++ b/.Rproj.user/5271889B/sources/per/t/950DD430-contents
@@ -162,7 +162,7 @@
 \end{mdframed}
 
 % Brgin body of poster
-\begin{adjmulticols*}{3}{10mm}{10mm}
+\begin{adjmulticols*}{4}{10mm}{10mm}
 \small{
 \color{black}
 $body$
diff --git a/.Rproj.user/5271889B/sources/prop/FA5E3F8 b/.Rproj.user/5271889B/sources/prop/FA5E3F8
index a662063..293766f 100644
--- a/.Rproj.user/5271889B/sources/prop/FA5E3F8
+++ b/.Rproj.user/5271889B/sources/prop/FA5E3F8
@@ -1,4 +1,4 @@
 {
-    "cursorPosition" : "17,427",
+    "cursorPosition" : "17,176",
     "scrollLine" : "14"
 }
\ No newline at end of file
diff --git a/.Rproj.user/5271889B/sources/prop/FDA71E49 b/.Rproj.user/5271889B/sources/prop/FDA71E49
index 8674fcd..b928d57 100644
--- a/.Rproj.user/5271889B/sources/prop/FDA71E49
+++ b/.Rproj.user/5271889B/sources/prop/FDA71E49
@@ -1,4 +1,4 @@
 {
-    "cursorPosition" : "165,6",
-    "scrollLine" : "153"
+    "cursorPosition" : "164,23",
+    "scrollLine" : "149"
 }
\ No newline at end of file
