name: overleaf-collaboration-guide description: "Guide to collaborative LaTeX editing with Overleaf" metadata: openclaw: emoji: "👥" category: "writing" subcategory: "latex" keywords: ["online LaTeX editor", "collaborative LaTeX", "Overleaf", "LaTeX environment setup"] source: "wentor-research-plugins"
Overleaf Collaboration Guide
Set up and manage collaborative LaTeX projects on Overleaf with best practices for multi-author workflows, version control, and project organization.
Getting Started with Overleaf
Creating a Project
Overleaf (overleaf.com) is a browser-based LaTeX editor that provides real-time collaboration, automatic compilation, and integrated version history.
Project creation options:
| Method | When to Use |
|---|---|
| Blank project | Starting from scratch |
| Upload project | Migrating existing local LaTeX project |
| Import from GitHub | Existing repo-based project |
| Use a template | Conference/journal submissions (IEEE, ACM, Springer, Elsevier templates available) |
| Copy from existing | Forking a previous project |
Recommended Project Structure
project-root/
├── main.tex # Main document (entry point)
├── preamble.tex # Packages, macros, custom commands
├── sections/
│ ├── 01-introduction.tex
│ ├── 02-related-work.tex
│ ├── 03-methods.tex
│ ├── 04-results.tex
│ ├── 05-discussion.tex
│ └── 06-conclusion.tex
├── figures/
│ ├── fig1-overview.pdf
│ ├── fig2-results.pdf
│ └── fig3-comparison.pdf
├── tables/
│ └── results-table.tex
├── references.bib # Bibliography database
└── README.md # Project notes (not compiled)
Main File Setup
% main.tex
\documentclass[conference]{IEEEtran} % or article, etc.
\input{preamble} % load packages and macros
\begin{document}
\title{Your Paper Title}
\author{Author One \and Author Two \and Author Three}
\maketitle
\begin{abstract}
Your abstract here.
\end{abstract}
\input{sections/01-introduction}
\input{sections/02-related-work}
\input{sections/03-methods}
\input{sections/04-results}
\input{sections/05-discussion}
\input{sections/06-conclusion}
\bibliographystyle{IEEEtran}
\bibliography{references}
\end{document}
Multi-Author Collaboration
Sharing and Permissions
| Role | Capabilities |
|---|---|
| Owner | Full control, can delete project, manage collaborators |
| Editor | Can edit all files, cannot manage collaborators |
| Viewer | Read-only access, can download but not modify |
Share via:
- Link sharing: Generate a read-only or edit link (anyone with the link can access)
- Email invitation: Invite specific collaborators by email with role assignment
Author Coordination Best Practices
- Assign sections: Each author owns specific
.texfiles to minimize merge conflicts. - Use comments: Overleaf supports inline comments (
% TODO: revise this paragraph) and threaded review comments. - Use custom commands for notes:
% In preamble.tex, define author-specific annotation commands
\usepackage{xcolor}
\newcommand{\alice}[1]{\textcolor{blue}{[Alice: #1]}}
\newcommand{\bob}[1]{\textcolor{red}{[Bob: #1]}}
\newcommand{\todo}[1]{\textcolor{orange}{[TODO: #1]}}
% In text:
This result is surprising \alice{Should we add more analysis here?}
and warrants further investigation \todo{Add statistical test}.
- Track changes: Overleaf Premium includes a track-changes mode. For free plans, use the
changespackage:
\usepackage{changes}
\definechangesauthor[name={Alice}, color=blue]{AL}
\definechangesauthor[name={Bob}, color=red]{BO}
% Usage:
\added[id=AL]{This is new text added by Alice.}
\deleted[id=BO]{This text was removed by Bob.}
\replaced[id=AL]{new text}{old text}
Git Integration
Overleaf + GitHub Sync
Overleaf Premium supports bidirectional GitHub sync:
- In Overleaf, go to Menu > Sync > GitHub
- Link your GitHub account and select or create a repository
- Pull/push changes between Overleaf and GitHub
Overleaf + Local Git
# Clone your Overleaf project via git
git clone https://git.overleaf.com/YOUR_PROJECT_ID my-paper
cd my-paper
# Edit locally, then push back to Overleaf
git add -A
git commit -m "Updated results table"
git push origin master
# Pull changes made on Overleaf
git pull origin master
Credentials: Use your Overleaf email as username and an Overleaf-generated token as password.
Compilation and Debugging
Common Compilation Errors
| Error | Cause | Fix |
|---|---|---|
Undefined control sequence | Missing package or typo in command | Check \usepackage or spelling |
Missing $ inserted | Math symbol outside math mode | Wrap in $...$ or \text{...} |
File not found | Incorrect path in \input or \includegraphics | Check file names (case-sensitive on Overleaf) |
Overfull \hbox | Content too wide for column | Resize figure, adjust text, or add \sloppy |
Citation undefined | BibTeX entry missing or key mismatch | Verify .bib entry key matches \cite{} |
Debugging Tips
- Use Recompile from scratch (Ctrl+Shift+Enter) to clear cache
- Check the Logs and output files panel for detailed error messages
- Use
\listfilesin preamble to see which packages are loaded - Overleaf uses TeX Live 2024; check package compatibility if using older templates
Submission Workflow
Preparing for Journal Submission
- Flatten the project: Some journals require a single
.texfile.
# Use latexpand to flatten \input commands
latexpand main.tex > submission.tex
- Check formatting: Verify page limits, font sizes, margin requirements.
- Download as zip: Menu > Download > Source to get all files.
- Convert figures: Ensure all figures are in accepted formats (PDF, EPS, or high-res PNG/TIFF).
- Clean up: Remove TODO comments, author annotation commands, and debug code.
% Add to preamble for submission: disable all annotation commands
\renewcommand{\alice}[1]{}
\renewcommand{\bob}[1]{}
\renewcommand{\todo}[1]{}
Useful Overleaf Keyboard Shortcuts
| Action | Shortcut (Mac) | Shortcut (Windows) |
|---|---|---|
| Compile | Cmd+Enter | Ctrl+Enter |
| Bold | Cmd+B | Ctrl+B |
| Italic | Cmd+I | Ctrl+I |
| Comment toggle | Cmd+/ | Ctrl+/ |
| Find & replace | Cmd+H | Ctrl+H |
| Go to line | Cmd+Shift+L | Ctrl+Shift+L |
| Toggle PDF | Cmd+Shift+O | Ctrl+Shift+O |