Files
AutoLTX/README.md
Phani Pavan K 2bea58ed38
All checks were successful
/ Build Container (push) Successful in 57m39s
change ls to find, pass mainfile name to latex
2025-09-18 07:37:17 +05:30

42 lines
1.8 KiB
Markdown

# AutoLTX
![pulls](https://img.shields.io/docker/pulls/phanipavank/autoltx.svg) ![size](https://img.shields.io/docker/image-size/phanipavank/autoltx.svg) ![version](https://img.shields.io/docker/v/phanipavank/autoltx.svg)
Automated build system for compiling Latex Files, mimicing the Overleaf build system.
## Download
This image is published to dockerhub, pull it using
```bash
docker pull phanipavank/autoltx:latest
```
## Building
The [DockerFile](./DockerFile) is provided in the root folder of this repo. Build the docker container using
```bash
docker build -t autoltx:latest .
```
## Usage
1. Download the overleaf project as a zip file or using the git integration for easier integration.
2. Use the following command to attach the project folder to the built container.
```bash
docker run --rm -it -e "mainFile=<mainTEXfile>" -v <projectFolderPath>:/app/project:z --user 1000:1000 phanipavank/autoltx:latest
```
replace `<mainTEXfile>` with the primary tex file to compile, `<projectFolderPath>` with the path to the project folder.
This will compile your project whenever a change is observed in the `mainTEXfile` file.
## Observables:
- Compilation starts as soon as you start the container, and if the required files are present in the project folder.
- The container will create a new folder `pdf` to store all the build files.
- You can follow the compilation logs in the terminal for any errors or warnings.
- Once the project compiles, the resulting PDF ends up in the `<projectFolderPath>`, called `output.pdf`. Keep it open so any changes to the main tex file triggers a refresh by your PDF viewer. Other files include `compile.sh`: the main compilation script, `latexmkrc`: used by the `latexmk` compiler, edit cautiously, and `.autoltx`: used for versioning the container scripts.
- These files are added to gitignore to avoid tracking by git.