Skip to main content

GitLaTeX IDE

A simple web-based IDE for LaTeX projects with Git support. Create workspaces, clone repos, edit in a Monaco-powered editor, compile to PDF, and push changes—without Overleaf or the command line.


Installation

Install from PyPI:

pip install gitlatex

Requirements: Python 3.8+, and (for full use) Git and a LaTeX distribution with pdflatex (e.g. TeX Live, MiKTeX).


Quick start

gitlatex

Your browser will open at http://localhost:5000. Create a workspace or clone a repo, then open it to edit, compile, and use Git (status, diff, commit, push) from the toolbar.

Options:

Option Description
--port, -p Port (default: 5000)
--host Bind host (default: 127.0.0.1)
--no-browser Do not open the browser on start
--repos Directory for workspaces (default: ./repos in current working directory)

Example: gitlatex --port 3000 --repos /path/to/my/repos


Features

  • Workspaces – Create local folders or clone from a Git URL (e.g. GitHub).
  • File tree – Create, rename, move, delete, and upload files and folders.
  • Editor – Monaco editor, multiple tabs, resizable panels.
  • Compile – Build with pdflatex, view PDF in-app, see errors in the console.
  • Git – Status, diff, commit, and push from the Git dropdown in the toolbar.
  • Settings – Light/dark theme; optional remote Compiler API (URL + API key) to compile via a web service instead of local pdflatex.

Workflow

  1. Run gitlatex and open the app in your browser.
  2. Add a project – Create a new workspace or clone from a Git URL.
  3. Open – Click a repo to open the editor.
  4. Edit – Use the file tree and editor; click Compile to build.
  5. Git – Use the Git menu for Status, Diff, Commit, Push.

Projects are stored in the repos directory (or the path you set with --repos).


Troubleshooting

  • Compile fails – Install a LaTeX distribution and ensure pdflatex is on your PATH.
  • Port in use – Use another port: gitlatex --port 3000.
  • Windows: "The process cannot access the file... gitlatex.exe" – Another instance is running. Close it, then run gitlatex again.

Development

Run from source (no PyPI install): clone the repository, then from its root:

pip install -e .
gitlatex

Or run the package without installing:

pip install flask gitpython
python -m gitlatex

Author Note

This project was introduced to me by Atiq Bro. He was learning node. Then I kinda hijacked his project and made some ui change, added some features and then created another branch to publish it as a python package.


License

ISC

Release files for gitlatex 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gitlatex 1.2.0
File Size Uploaded
gitlatex-1.2.0.tar.gz 53.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gitlatex 1.2.0
File Interpreter ABI Platform
gitlatex-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 107.0 kB

Release files / gitlatex-1.2.0.tar.gz

Download URL gitlatex-1.2.0.tar.gz
Size 53.9 kB
Tags Source
SHA-256 checksum
How to use checksums
b3280206de254ad98328020cd41a08ca6afeb8c1dbbb0b73d7c769ec661052f3
BLAKE2b-256 checksum
How to use checksums
92b2d59460757fe84e2e0950ce26eca64fd808d5359b075c509f08b16e005891
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release files / gitlatex-1.2.0-py3-none-any.whl

Download URL gitlatex-1.2.0-py3-none-any.whl
Size 53.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
68f9a887ea48d0ce9c3cbe3b8ff5de2b1890affc32b16ae779babe78d0874152
BLAKE2b-256 checksum
How to use checksums
36ce23102e372b24e87e88a17e56e2dc9b277d8a7f8c40298604aa3624551737
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release history Release notifications | RSS feed

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

This release

1.2.0 This release

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page