diff --git a/.Rproj.user/441ADA46/sources/per/t/5101BFD8 b/.Rproj.user/441ADA46/sources/per/t/245EA062
similarity index 76%
rename from .Rproj.user/441ADA46/sources/per/t/5101BFD8
rename to .Rproj.user/441ADA46/sources/per/t/245EA062
index f506e4f..2102f27 100644
--- a/.Rproj.user/441ADA46/sources/per/t/5101BFD8
+++ b/.Rproj.user/441ADA46/sources/per/t/245EA062
@@ -1,21 +1,21 @@
 {
     "collab_server" : "",
     "contents" : "",
-    "created" : 1546701584380.000,
+    "created" : 1546753481729.000,
     "dirty" : false,
     "encoding" : "UTF-8",
     "folds" : "",
     "hash" : "163849752",
-    "id" : "5101BFD8",
+    "id" : "245EA062",
     "lastKnownWriteTime" : 1546702482,
-    "last_content_update" : 1546702482555,
+    "last_content_update" : 1546702482,
     "path" : "~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd",
     "project_path" : "inst/rmarkdown/templates/posterdown_pdf/skeleton/skeleton.Rmd",
     "properties" : {
         "cursorPosition" : "37,9",
-        "scrollLine" : "26"
+        "scrollLine" : "22"
     },
-    "relative_order" : 3,
+    "relative_order" : 2,
     "source_on_save" : false,
     "source_window" : "",
     "type" : "r_markdown"
diff --git a/.Rproj.user/441ADA46/sources/per/t/5101BFD8-contents b/.Rproj.user/441ADA46/sources/per/t/245EA062-contents
similarity index 100%
rename from .Rproj.user/441ADA46/sources/per/t/5101BFD8-contents
rename to .Rproj.user/441ADA46/sources/per/t/245EA062-contents
diff --git a/.Rproj.user/441ADA46/sources/per/t/27AE7CA7 b/.Rproj.user/441ADA46/sources/per/t/27AE7CA7
deleted file mode 100644
index 3f4b3a0..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/27AE7CA7
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "collab_server" : "",
-    "contents" : "",
-    "created" : 1546701554859.000,
-    "dirty" : false,
-    "encoding" : "UTF-8",
-    "folds" : "",
-    "hash" : "4238849555",
-    "id" : "27AE7CA7",
-    "lastKnownWriteTime" : 1546700391,
-    "last_content_update" : 1546700391,
-    "path" : "~/Documents/GitHub/posterdown/R/posterdown_pdf.R",
-    "project_path" : "R/posterdown_pdf.R",
-    "properties" : {
-        "cursorPosition" : "0,23",
-        "scrollLine" : "0"
-    },
-    "relative_order" : 2,
-    "source_on_save" : false,
-    "source_window" : "",
-    "type" : "r_source"
-}
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/per/t/27AE7CA7-contents b/.Rproj.user/441ADA46/sources/per/t/27AE7CA7-contents
deleted file mode 100644
index 06f5bd7..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/27AE7CA7-contents
+++ /dev/null
@@ -1,22 +0,0 @@
-#' Posterdown PDF format (using 'memoir' document class)
-#'
-#' @inheritParams rmarkdown::pdf_document
-#' @param ... Additional arguments to \code{rmarkdown::pdf_document}
-#'
-#' @return R Markdown output format to pass to
-#'   \code{\link[rmarkdown:render]{render}}
-#'
-#' @examples
-#'
-#' \dontrun{
-#' library(rmarkdown)
-#' draft("MyArticle.Rmd", template = "posterdown_generic", package = "posterdown")
-#' }
-#'
-#' @export
-posterdown_pdf <- function(..., keep_tex = TRUE) {
-  inherit_pdf_document(...,
-                       keep_tex = keep_tex,
-                       template = find_resource("posterdown_pdf", "template.tex"),
-                       citation_package = "biblatex")
-}
diff --git a/.Rproj.user/441ADA46/sources/per/t/AB1901F0 b/.Rproj.user/441ADA46/sources/per/t/AB1901F0
new file mode 100644
index 0000000..1f8a42c
--- /dev/null
+++ b/.Rproj.user/441ADA46/sources/per/t/AB1901F0
@@ -0,0 +1,22 @@
+{
+    "collab_server" : "",
+    "contents" : "",
+    "created" : 1546753148207.000,
+    "dirty" : false,
+    "encoding" : "UTF-8",
+    "folds" : "",
+    "hash" : "3606729720",
+    "id" : "AB1901F0",
+    "lastKnownWriteTime" : 1546753193,
+    "last_content_update" : 1546753193228,
+    "path" : "~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/template.yaml",
+    "project_path" : "inst/rmarkdown/templates/posterdown_pdf/template.yaml",
+    "properties" : {
+        "cursorPosition" : "0,20",
+        "scrollLine" : "0"
+    },
+    "relative_order" : 1,
+    "source_on_save" : false,
+    "source_window" : "",
+    "type" : "yaml"
+}
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/per/t/AB1901F0-contents b/.Rproj.user/441ADA46/sources/per/t/AB1901F0-contents
new file mode 100644
index 0000000..6b13ddb
--- /dev/null
+++ b/.Rproj.user/441ADA46/sources/per/t/AB1901F0-contents
@@ -0,0 +1,4 @@
+name: Posterdown PDF
+description: >
+ Template for creating R Markdown based PDF via Latex
+create_dir: true
diff --git a/.Rproj.user/441ADA46/sources/per/t/FA0F97ED b/.Rproj.user/441ADA46/sources/per/t/FA0F97ED
deleted file mode 100644
index d67c991..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/FA0F97ED
+++ /dev/null
@@ -1,22 +0,0 @@
-{
-    "collab_server" : "",
-    "contents" : "",
-    "created" : 1546701469011.000,
-    "dirty" : false,
-    "encoding" : "UTF-8",
-    "folds" : "",
-    "hash" : "2844328823",
-    "id" : "FA0F97ED",
-    "lastKnownWriteTime" : 1546701744,
-    "last_content_update" : 1546701744901,
-    "path" : "~/Documents/GitHub/posterdown/inst/rmarkdown/templates/posterdown_pdf/resources/template.tex",
-    "project_path" : "inst/rmarkdown/templates/posterdown_pdf/resources/template.tex",
-    "properties" : {
-        "cursorPosition" : "146,28",
-        "scrollLine" : "139"
-    },
-    "relative_order" : 1,
-    "source_on_save" : false,
-    "source_window" : "",
-    "type" : "tex"
-}
\ No newline at end of file
diff --git a/.Rproj.user/441ADA46/sources/per/t/FA0F97ED-contents b/.Rproj.user/441ADA46/sources/per/t/FA0F97ED-contents
deleted file mode 100644
index 87ae68e..0000000
--- a/.Rproj.user/441ADA46/sources/per/t/FA0F97ED-contents
+++ /dev/null
@@ -1,180 +0,0 @@
-%brent's poster layout :)
-
-\documentclass[article,$font_size$,extrafontsizes]{memoir}
-
-%utf-8 seems to be important
-\usepackage[utf8]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage{multicol}
-\usepackage{graphicx}
-\usepackage{blindtext}
-\usepackage[svgnames,table]{xcolor}
-\usepackage[framemethod=tikz]{mdframed}
-\usepackage{color}
-\usepackage{geometry}
-\usepackage{adjmulticol}
-
-%For kable extra package :)
-\usepackage{booktabs}
-\usepackage{longtable}
-\usepackage{array}
-\usepackage{multirow}
-\usepackage{wrapfig}
-\usepackage{float}
-\usepackage{colortbl}
-\usepackage{pdflscape}
-\usepackage{pagecolor}
-\usepackage{tabu}
-\usepackage{threeparttable}
-\usepackage{threeparttablex}
-\usepackage[normalem]{ulem}
-\usepackage{makecell}
-
-\usepackage{hyperref}
-\hypersetup{
-    colorlinks=true,
-    linkcolor=$link_col$,
-    citecolor=$cite_col$,
-    filecolor=magenta,
-    urlcolor=$url_col$,
-}
-
-%Maybe Define a department param in the YAML
-\def\department#1{\gdef \@department{#1}}
-$if(department)$
-\department{$department$}
-$endif$
-
-%For figure and table placement
-\usepackage{float}
-\floatplacement{figure}{H}
-\floatplacement{table}{H}
-
-%spacing between figure/ table and caption
-\setlength{\abovecaptionskip}{0.4in}
-\setlength{\belowcaptionskip}{0.2in}
-\captionnamefont{\footnotesize\sffamily\bfseries}
-\captiontitlefont{\footnotesize\sffamily}
-
-%define column options
-\setlength{\columnseprule}{1pt}
-\def\columnseprulecolor{\color{$columnline_col$}}
-\setsubsubsecheadstyle{\small\color{$header_textcol$}\textbf}% Set \section style
-\setsecheadstyle{\small\color{$header_textcol$}}
-\setsecnumformat{}
-\def\sectionmark#1{\markboth{#1}{#1}}
-
-%-----------------------------------------------------
-
-\thispagestyle{empty}
-\definecolor{light-gray}{gray}{0.9}
-
-%biblatex options
-\usepackage[sorting=none,backend=biber]{biblatex}
-\renewcommand*{\bibfont}{\tiny}
-\bibliography{$bibliography$}
-\defbibheading{bibliography}[\bibname]{%
-\section*{#1}%
-\markboth{#1}{#1}}
-\AtBeginDocument{%
-  \renewcommand{\bibname}{References}
-}
-
-%bring in the users information
-\author{$author$}
-\title{$title$}
-\counterwithout{section}{chapter}
-\makechapterstyle{mydefault}{
-\addtocounter{secnumdepth}{2}
-\setsecheadstyle{\Large\color{$header_textcol$}\textbf}
-\setsubsecheadstyle{\itshape}
-\setsubsubsecheadstyle{\itshape}
-}
-
-\chapterstyle{mydefault}
-
-%define column spacing
-\setlength\columnsep{1in}
-
-\setlength\parindent{1em}
-\setlength\parskip{1em}
-\setlength\hangparas{0}
-
-%spacing after section head title
-\setaftersecskip{0.3in}
-\setbeforesecskip{1in}
-\setlength\textfloatsep{0.3in}
-\setlength\floatsep{0.3in}
-\setlength\intextsep{0.3in}
-
-\setstocksize{$poster_height$}{$poster_width$}
-\settrimmedsize{\stockheight}{\stockwidth}{*}
-\settypeblocksize{$poster_height$}{$poster_width$}{*}
-\setlrmargins{*}{*}{1}
-\setulmarginsandblock{2.5cm}{*}{*}
-\setmarginnotes{0em}{0cm}{0cm}
-\setlength{\footskip}{0cm}
-\setlength{\footnotesep}{0cm}
-\setlength{\headheight}{0pt}
-\setlength{\headsep}{0pt}
-\setlength{\trimtop}{0pt}
-\setlength{\trimedge}{0pt}
-\setlength{\uppermargin}{0pt}
-\checkandfixthelayout
-
-\definecolor{myframecolour}{HTML}{$title_bgcol$}
-
-\mdfdefinestyle{brentsmdfstyle}{%
-  backgroundcolor=myframecolour,
-  linecolor= $columnline_col$,
-  topline=false,
-  leftline=false,
-  rightline=false,
-  linewidth=2mm,
-  settings={\definecolor{linkcolor}{RGB}{255,255,255}}}
-
-%Footnote to white
-\usepackage{footmisc}
-\def\footnotelayout{\centering\color{white}}
-
-% see https://stackoverflow.com/a/47122900
-$if(highlighting-macros)$
-$highlighting-macros$
-$endif$
-
-\usepackage{$font_family$}
-\renewcommand*\familydefault{\sfdefault}
-\newpagecolor{$poster_bgcol$}
-%begin the document
-\begin{document}
-
-\begin{mdframed}[style=brentsmdfstyle]
-%sets footnote to be white hopefully
-\renewcommand\footnoterule{}
-\renewcommand{\thempfootnote}{\footnotesize\color{red}{\arabic{mpfootnote}}}
-
-% group which adds title author and other infor
-% Used instead of \maketitle for better spacing options
-\begingroup
-  \centering
-  \color{$title_textcol$}
-\vspace{0.5in}
-  \Huge{$title$} \\[0.3in]
-  \color{cyan} \Large{$author$} \\[0.2in]
-  \color{white} \large{$department$} \par
-  \vspace{0.2in}
-
-% end title section -------------------
-  \endgroup
-\end{mdframed}
-
-% Brgin body of poster
-\begin{adjmulticols*}{$column_numbers$}{10mm}{10mm}
-\normalsize{
-\color{black}
-$body$
-\printbibliography
-}
-\end{adjmulticols*}
-%end the poster
-\end{document}
