Skip to content

Latest commit

Β 

History

History
93 lines (69 loc) Β· 3.5 KB

File metadata and controls

93 lines (69 loc) Β· 3.5 KB

πŸ“„ Research Paper Starter Template (Code + LaTeX)

Welcome to the Research Paper Starter Template! This repository is designed to streamline the workflow of writing academic papers (specifically targeted at IEEE conferences/journals, but adaptable) while managing the associated experimental code.

It provides a clean separation of concerns:

  • code/: For your Python scripts, Jupyter notebooks (.ipynb), and experimental data.
  • paper/: For your LaTeX manuscript, modularized for easy collaboration and maintenance.

πŸš€ Features

  • Modular LaTeX Structure: The main paper is split into logical sections (introduction.tex, methodology.tex, etc.) in the paper/sections/ folder.
  • Cross-Platform Build Script: A Python-based build script (paper/build.py) that handles the full LaTeX compilation cycle (pdflatex -> bibtex -> pdflatex) automatically. Works on Windows, Linux, and macOS.
  • Smart Compilation: The build script checks if your PDF is locked (open in a viewer) and waits for you to close it before retrying, preventing common write errors.
  • Clean Repository: configured .gitignore to keep your repo free of LaTeX build artifacts (.aux, .log, etc.).

πŸ“‚ Directory Structure

.
β”œβ”€β”€ code/               # 🐍 Experimental Code
β”‚   β”œβ”€β”€ main.py         # Entry point for your experiments
β”‚   β”œβ”€β”€ pyproject.toml  # Python project dependencies
β”‚   └── ...
β”‚
β”œβ”€β”€ paper/              # πŸ“ LaTeX Manuscript
β”‚   β”œβ”€β”€ main.tex        # Main abstraction file (inputs other sections)
β”‚   β”œβ”€β”€ references.bib  # Bibliography file
β”‚   β”œβ”€β”€ build.py        # πŸ› οΈ Build utility
β”‚   β”œβ”€β”€ generated/      # (Optional) Figures generated by code
β”‚   └── sections/       # Content modules
β”‚       β”œβ”€β”€ abstract.tex
β”‚       β”œβ”€β”€ introduction.tex
β”‚       β”œβ”€β”€ methodology.tex
β”‚       └── ...
β”‚
└── README.md           # This file

πŸ› οΈ Prerequisites

  1. Python 3.x: Required for the build script and experimental code.
  2. LaTeX Distribution:
    • Windows: MiKTeX (Recommended) or TeX Live.
    • macOS: MacTeX.
    • Linux: TeX Live (sudo apt install texlive-full).

πŸ“– How to Use

1. Writing the Paper

Navigate to paper/sections/ and edit the individual .tex files.

  • sections/introduction.tex
  • sections/methodology.tex
  • etc.

The main.tex file acts as the skeleton. You mostly won't need to touch it unless you are adding new packages or changing the overall layout.

2. Building the PDF

Forget about complex terminal commands. We have a script for that.

  1. Open your terminal in the project root.
  2. Run the build script:
    python paper/build.py
  3. The script will:
    • Check if main.pdf is locked/open.
    • Run pdflatex (generation 1).
    • Run bibtex (citation linking).
    • Run pdflatex twice more (cross-reference resolution).
    • Output the final main.pdf.

3. Working with Code

The code/ directory is a standard Python project.

  • Define dependencies in pyproject.toml.
  • Place your Jupyter notebooks and scripts here.
  • (Optional) configure your code to save generated plots/figures directly to ../paper/generated/ so your paper updates automatically when you rerun experiments!

🀝 Authors

  • Braincore
  • Eric Julianto
  • Dian Alhusari
  • Safrizal Ardana Ardiyansa

Happy Researching! πŸŽ“