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, pull, 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, pull, and push from the Git dropdown in the toolbar. Push commits all changes with a timestamp message, then pushes; pull and push are enabled only when there is something to pull or push.
  • 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.3.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.3.0
File Size Uploaded
gitlatex-1.3.0.tar.gz 63.1 kB Details

Built distribution (wheel)

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

Total release size: 125.3 kB

Release files / gitlatex-1.3.0.tar.gz

Download URL gitlatex-1.3.0.tar.gz
Size 63.1 kB
Tags Source
SHA-256 checksum
How to use checksums
22f6c807a329a54f4e3cbe7ab330f2dc57b3db7f1683c454fe71697532d411d5
BLAKE2b-256 checksum
How to use checksums
a7e54922192840c2e6848fd2f881ee0101d8e20611d5e06469df1210ffcec1fb
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.3.0-py3-none-any.whl

Download URL gitlatex-1.3.0-py3-none-any.whl
Size 62.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c13aaf1c942f4a7c48bf0054efb8fbd1c3a1c5990b307ecf52c358c3fc516653
BLAKE2b-256 checksum
How to use checksums
5f506c08ab558161e4edd523c039198e6460a007ea86ea90b6d76f0d56dccf8e
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

This release

1.3.0 This release

2 release files

1.2.0

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