- Setup the necessary LaTeX dependencies
- Mount files
- Generate a PDF
- Host the PDF through a static file server
- Support for uploading text through the browser
- Support for regenerating the pdf within the container
- Support for writing LaTeX in the browser (and rendering it)
- Support for saving LaTeX in the browser to
paper.tex
- Better styling
- Better editing
- Better navigation
- Tweak some JS and HTML functionality around redirects, rerendering, and prevent default
docker-compose up
# If using Docker Compose Engine V2:
docker compose up
View the PDF and write LaTeX:
- https://localhost/public/
- A view, into the container (can also get the PDF from Docker Desktop > Container Files). (Experimental)
- https://localhost/public/editor.html
- A compressed view into the container to edit and modify LaTeX. (Experimental)
- Lacks support for many commonly used libraries like
amsmath
(but does support basic LaTeX to some extent). - This is mostly to explore the limits of the LATEX.js
- https://localhost/public/viewer.html
- A compressed view into the container to compile and view pdf's.
- https://localhost/public/pdfeditor.html
- Slightly more reliable way to edit and render text live.
- Use this view by default.
- Has supprt for
amsmath
and most other commonly used libraries.
- https://localhost/api/pdf/make - POST endpoint that'll regenerate the PDF file without having to restart the container. Is called from the view above.
- https://localhost/api/pdf/upload - POST endpoint that'll allow a file to be uploaded to overwrite
paper.tex
so it can be recompile (allows raw.tex
files to uploaded to the container to be compiled into.pdf
). - https://localhost/api/latex/save - POST endpoint to save inputted text to
paper.tex
(better UI and Nav features to be added to provide basic but fuller text editor support).
Note: all of the commands assume
paper.tex
is the relevant filename and filetype.
- https://wch.github.io/latexsheet/latexsheet-0.png
- https://linuxconfig.org/how-to-install-latex-on-ubuntu-20-04-focal-fossa-linux
- https://www.latex-project.org/help/documentation/usrguide-historic.pdf
- https://askubuntu.com/questions/1034019/18-04-cannot-install-texlive-full
- https://tutorialedge.net/golang/go-file-upload-tutorial/
- https://opensource.com/article/18/6/copying-files-go