Skip to main content

Academic essay templater — GTK4/libadwaita app for LaTeX, Typst, and Word templates

Project description

Gost

Academic Essay Templater — a native GTK4 / libadwaita desktop app for generating academic essay templates in LaTeX and Typst. Built for openSUSE / GNOME. Designed for theology, humanities, and social-science writing.

Features

  • Citation styles — SBL, Chicago (Notes), MLA, APA 7th ed., ASA, Turabian, Harvard — each applies the correct heading formatting, page numbering, and running headers automatically
  • Two output formats — Typst (default) and LaTeX, chosen by file extension at save time
  • Compiled preview — click Preview in the header bar to compile the template and display rendered pages (requires typst or latexmk)
  • Template profiles — save, load, and delete named configurations
  • Headers & Footers — running section title, document title, author, double-sided, page numbers, or auto per citation style
  • Extra packages — toggle LaTeX packages (lettrine, marginnote, csquotes, xcolor, listings, booktabs, siunitx, epigraph, lineno, todonotes) or Typst packages (droplet, codly, showybox, gentle-clues, tablex, drafting)
  • Language support — Russian, Hebrew, Japanese, Tibetan, Sanskrit, Ancient Greek, Chinese (polyglossia / xeCJK / luatexja)
  • Journal template importer — open a .tex / .cls / .sty to extract font, paper, margin, spacing, and bibliography settings
  • Zotero — paste a BetterBibTeX auto-export path; remembered across sessions
  • Endnotes — footnotes or endnotes for both LaTeX and Typst
  • Table of contents toggle
  • GOST Type B font — toggle to use the GOST Type B engineering lettering as the application UI font

System Requirements

Runtime

Dependency Notes
Python 3.10+
PyGObject python3-gobject on openSUSE
GTK4 typelib typelib-1_0-Gtk-4_0
libadwaita ≥ 1.4 typelib-1_0-Adw-1

Compiled preview (optional)

Typst Install from https://typst.app or your package manager
LaTeX texlive-latexmk + poppler-tools (pdftoppm) or ImageMagick (convert)

Installation

pipx (recommended)

pipx install gost-academic --system-site-packages
pipx install 'gost-academic[word]' --system-site-packages  # + Word/ODT export
gost-setup-desktop   # adds Gost to the application launcher
gost

pip

pip install gost-academic
pip install 'gost-academic[word]'  # + Word/ODT export
gost

Note: GTK4 and PyGObject must be installed as system packages first — pip cannot install them. --system-site-packages is required with pipx so the isolated environment can access them. Run gost-setup-desktop once after pipx install to add Gost to the GNOME launcher. See HELP.md for distribution-specific commands.

AppImage

chmod +x gost-0.1.6-x86_64.AppImage
./gost-0.1.6-x86_64.AppImage
# Or install via Gear Lever for desktop integration

From source

git clone https://github.com/calstfrancis/gost
cd gost
python3 -m essay_builder.app

Build your own AppImage

bash build-appimage.sh
# Produces gost-0.1.6-x86_64.AppImage in the current directory

Usage

  1. Fill in Title & Authors, pick a Citation Style, adjust Layout & Spacing
  2. Toggle extra packages in Extra Packages and script support in Languages
  3. Configure running headers in Headers & Footers
  4. Set your bibliography path in Bibliography (press Enter to persist it)
  5. Click Preview to compile and view, or Export to save the file
  6. Use Profiles to save and reload full configurations

Development

python3 -m essay_builder.app                    # run directly
python3 -m unittest discover tests/ -v          # run tests (no GTK needed)
bash build-appimage.sh                          # build AppImage

Troubleshooting

Common issues and distribution-specific install commands are in HELP.md.

Symptom Fix
Preview button greyed out Install typst (Typst) or latexmk + poppler-tools (LaTeX)
ImportError: cannot import name 'Adw' Install libadwaita typelib — see HELP.md
ModuleNotFoundError: No module named 'gi' Install PyGObject; with pipx reinstall using --system-site-packages — see HELP.md
Gost not in application launcher (pipx) Run gost-setup-desktop — see HELP.md
gtk-icon-theme-error-quark warning Install adwaita-icon-theme — see HELP.md

Roadmap

Planned features (contributions welcome):

  • BibLaTeX backend selector (biber / bibtex8)
  • Custom LaTeX preamble editor (freeform preamble block)
  • Typst hayagriva bibliography integration
  • CSL citation style support via Pandoc bridge
  • Dark/light preview theme toggle
  • CLI mode — gost generate --style SBL --format typst -o essay.typ
  • Flatpak manifest / Flathub submission

Contributing

See CONTRIBUTING.md for the module layout, widget hierarchy, and how to add a new citation style or extra package.

License

GNU General Public License v3.0 — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gost_academic-0.1.6.tar.gz (81.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gost_academic-0.1.6-py3-none-any.whl (81.4 kB view details)

Uploaded Python 3

File details

Details for the file gost_academic-0.1.6.tar.gz.

File metadata

  • Download URL: gost_academic-0.1.6.tar.gz
  • Upload date:
  • Size: 81.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gost_academic-0.1.6.tar.gz
Algorithm Hash digest
SHA256 7fd5b646410585e376347408e820237b9918c493e02c16754826c40d4c566863
MD5 cacc8802d9251a2b039b5e5aab20eec9
BLAKE2b-256 421cb4899687d842397a0507a7aabe079b544b27d6b2a148342a2ce442ad09d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for gost_academic-0.1.6.tar.gz:

Publisher: publish.yml on calstfrancis/Gost

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gost_academic-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: gost_academic-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 81.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gost_academic-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 5975ad41d3bb993c97b1abf6eaf2077b33745ce04ac3456cfafb3659a72f9ec7
MD5 d95f813f75a876d9f06d8cd4db3449c2
BLAKE2b-256 f9e110ec594df6c443bfde067bcf2b5a7bfe423bfa3d9a6a68acd6c0fab90133

See more details on using hashes here.

Provenance

The following attestation bundles were made for gost_academic-0.1.6-py3-none-any.whl:

Publisher: publish.yml on calstfrancis/Gost

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page