sylvainhalle / PaperShell
Nice and flexible template environment for papers written in LaTeX
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing sylvainhalle/PaperShell in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler viewPaperShell — Write once, submit anywhere ======================================== *One template to rule them all…* PaperShell is a LaTeX workflow for writing research papers that must be submitted to different publishers (IEEE, ACM, Springer, Elsevier, AAAI, LIPIcs, etc.) while keeping a single source document independent of the journal or conference template. It allows you to switch between LaTeX document classes (IEEEtran, acmart, llncs, elsarticle, lipics, …) without rewriting the paper, and to export clean sources suitable for journal or conference submission. PaperShell works locally and in Overleaf, uses LuaLaTeX to generate the correct preamble automatically, and produces final sources that compile with pdfLaTeX, so editors do not need any special tools. The project provides: • Up-to-date class and bibliography files for many publishers • A Lua-based template system that generates the proper preamble automatically • Direct compatibility with Overleaf • A build process based on • Scripts to export editor-ready sources • Helper scripts for bibliography cleanup, diffs, and packaging Why this exists -------------- If you write research papers in Computer Science, you have probably had to use several different LaTeX document classes: • for AAAI conferences • for ACM conferences and journals • for Elsevier journals • for IEEE conferences and journals • for LIPIcs proceedings • for Springer's Lecture Notes in Computer Science • for Springer journals • for USENIX publications • …and many others Unfortunately, these classes are not compatible with each other. Switching from one publisher to another often means rewriting parts of the document that have nothing to do with the content: title, authors, affiliations, bibliography settings, package options, and sometimes even the way sections or figures are defined. For example, declaring authors looks different in every class. In : In : In : In : \author{Emmett Brown\fnref{label1}} \author{Marty McFly\fnref{label1}} \author{Biff Tannen\fnref{label2}} \fntext{Temporal Industries, Hill Valley, CA 90193} \fntext{BiffCo inc., Hill Valley, CA 90193} Switching templates usually means editing a lot of boilerplate that should not have to change. PaperShell avoids this by separating: • the content of the paper • the publisher style • the generated preamble so the same source file can be compiled with different document classes. What PaperShell provides ------------------------ • Ready-to-use class files for many publishers • Automatic preamble generation using LuaLaTeX • Direct compatibility with Overleaf • Build based on • Export of editor-ready sources • Helper tools for bibliography and packaging Supported publishers include: • AAAI • ACM • Elsevier • IEEE • Springer • LIPIcs • EPTCS • EasyChair / EPiC • Wiley • USENIX • and others What changed in version 3 ------------------------- Previous versions of PaperShell used PHP scripts to generate the preamble. Version 3 uses LuaLaTeX instead. Advantages: • Styles can be switched directly from Overleaf • No external script is required to compile • Generated files are plain LaTeX • Final sources compile with pdfLaTeX • Simpler build process ( ) LuaLaTeX is only required to generate the preamble. Once generated, the document is ordinary LaTeX. Quick start ----------- • Download the empty project: https://github.com/sylvainhalle/PaperShell/releases/latest • Edit and choose the publisher. • Compile once with LuaLaTeX: • After that, normal compilation works: • Write your paper in and your abstract in . • To switch publisher, change the setting and compile again with LuaLaTeX. Overleaf usage -------------- PaperShell works directly in Overleaf. To switch style: • change the publisher in • compile once with LuaLaTeX • compile again normally After generation, the project can be compiled with pdfLaTeX, which is useful for final submission to editors. Exporting final sources ---------------------- PaperShell can export a clean bundle suitable for editors. The export step: • merges all files • includes the bibliography • resolves generated files • produces sources that compile with pdfLaTeX See for details. Dependencies ------------ Required: • LaTeX distribution (TeX Live / MikTeX) • latexmk • LuaLaTeX Optional: • PHP (for export / maintenance scripts) • latexdiff • aspell / textidote Full documentation ------------------ See for complete usage instructions, helper scripts, export options, and design notes. About ----- Maintained by Sylvain Hallé, Full Professor at Université du Québec à Chicoutimi, Canada.