This repository serves two distinct groups of people:
- Template Maintainers: Contributors who create and maintain LaTeX templates in this repository
- Template Users: Users who select templates to create document instances for their specific needs, and then save the LaTex code and its output to a different repo
The recommended development environment uses VS Code with LaTeX Workshop extension and MiKTeX distribution.
- VS Code: Download and install from https://code.visualstudio.com/
- Git: Download and install from https://git-scm.com/download/win
- Download MiKTeX from https://miktex.org/download
- Run the installer and choose "Complete MiKTeX" for full package installation
- During installation, select:
- Install for all users (recommended)
- Set "Install missing packages on-the-fly" to "Yes"
- After installation, open MiKTeX Console and update all packages:
- Go to "Updates" tab
- Click "Check for updates"
- Install all available updates
- Open VS Code
- Install the LaTeX Workshop extension:
- Press
Ctrl+Shift+Xto open Extensions - Search for "LaTeX Workshop" by James Yu
- Click Install
- Press
- Install additional helpful extensions:
- Code Spell Checker: For spell checking in LaTeX documents
Create or update your VS Code settings (File → Preferences → Settings → Open Settings (JSON)) to include the following content (DO NOT delete existing settings):
{
"latex-workshop.latex.tools": [
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOC%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": ["%DOCFILE%"]
}
],
"latex-workshop.latex.recipes": [
{
"name": "pdflatex",
"tools": ["pdflatex"]
},
{
"name": "pdflatex → bibtex → pdflatex*2",
"tools": ["pdflatex", "bibtex", "pdflatex", "pdflatex"]
}
],
"latex-workshop.view.pdf.viewer": "tab",
"latex-workshop.latex.autoClean.run": "onBuilt"
}-
Download the latest release from the Releases page.
-
Unzip the release file and open it in your file explorer.
-
Browse the available templates and locate the one you need. All released templates include
README.mdfiles that can guide you. -
Create a new document instance:
- Copy all the contents of the folder that your desired template is located in to the location where you will work on the finalized document.
- Write your document in the repository of the project that the document belongs to, NOT in this repo (
documentation_templates). - Apply Git best practices when writing your document, such as creating branches for important updates.
-
Open your project repo in VS Code
-
Customize the template:
- Edit the main
.texfile with your content - Replace placeholder text and examples
- Add your figures and tables, and reference them in your text
- Add bibliographic references to
.bibfiles, and load them to your LaTeX document
- Edit the main
-
Build and preview:
- Use
Ctrl+Alt+Bto compile your document - Use
Ctrl+Alt+Vto open the PDF viewer - LaTeX Workshop will automatically recompile on save
- Use
-
"Package not found" errors:
- Open MiKTeX Console
- Go to Packages tab
- Search and install the missing package
- Or ensure "Install packages on-the-fly" is enabled
-
Compilation fails:
- Check the LaTeX Workshop output panel in VS Code
- Look for syntax errors in your
.texfile - Ensure all referenced files exist and paths are correct
-
PDF not updating:
- Clear auxiliary files:
Ctrl+Alt+Cin VS Code - Rebuild:
Ctrl+Alt+B - Check for compilation errors
- Clear auxiliary files:
-
VS Code not recognizing LaTeX commands:
- Ensure LaTeX Workshop extension is installed and enabled
- Check that your file has
.texextension - Restart VS Code if necessary
- If one doesn't exist yet, create an issue describng the template you will create, or the changes you will apply to an existing one
- Assign the issue to yourself and create a new branch to work on the issue, if needed
- Clone this repo, and checkout to the issue branch
- Create a new folder for your template, if needed
- Create a
README.mdfile in your template folder (DO NOT modify the one at the repo root) explaining when and how to use your template - Start development, structuring your work as commits
- Try to keep all your work in a single main LaTeX file (
.tex,.cls, or.sty), that way it's easier for others to import and use. - If you need to use multiple
.tex, link them together in a single main file.
- Try to keep all your work in a single main LaTeX file (
- Test your template by compiling it, and make sure there are no errors
- If there are warnings, properly explain them in your
README.mdfile - Commit the test file, named as
test.tex
- If there are warnings, properly explain them in your
- Create a
manifest.jsonlisting all files and assets needed to compile your template, including the main file itself.- Use
../as many times as necessary when listing dependencies. - Set the
publishparameter totrueif you want your template to be included in the releases.
- Use
- Open a pull request once you have completed your changes, and ask someone else to review and merge it
See common/latex/README.md for more instructions for contributors.
documentation_templates/
├── common/ # For elements shared across multiple templates
│ ├── images/
│ │ └── delta_logo.png
│ ├── bib/
│ │ └── shared_refs.bib
│ ├── data/
│ │ └── members_table.tex # e.g. a table with all lab members
│ └── latex/
│ └── example_class_name/
│ └── example_class.cls
│ ├── test.tex
│ ├── manifest.json
│ ├── README.md # When and how to use the template
│ └── themes/
│ └── example_theme_name/
│ └── example_theme.sty
├── example_template/
│ ├── example_template.tex
│ ├── example_image.png
│ ├── test.tex
│ ├── manifest.json
│ └── README.md # When and how to use the template
└── README.md # Project root README