A privacy-first, offline-first resume builder powered by Rust.
# One-command local setup
make setup
# Start the API and web dev server
make devOpen http://localhost:5173 to use the web app during development.
For self-hosting with Docker, see Deployment or the documentation site.
CLI commands are also available:
# Build all crates
make build
# Run the CLI
cargo run -p rustume-cli -- parse resume.json -o rustume.json
cargo run -p rustume-cli -- render rustume.json -o resume.pdf
# Run tests
make test- 🔒 Privacy-First - Your data stays on your device by default
- 📡 Offline-First - Works 100% without internet
- ⚡ Native Performance - Rust core with native UI shells
- 📄 Modern PDF - Typst-based generation, no browser dependencies
- 🎨 12 Templates - Professionally designed, customizable themes
- 📥 Import Support - JSON Resume, LinkedIn export, Reactive Resume V3
- 🐳 Docker Ready - Containerized server with OpenAPI docs
# Parse a JSON Resume file
rustume parse resume.json -o rustume.json
# Render to PDF
rustume render rustume.json -o resume.pdf
# Generate PNG preview
rustume preview rustume.json -o preview.png
# List available templates
rustume templates
# Create a new resume
rustume init -o my-resume.jsonSee Deployment for pull-from-GHCR, build-from-source, compose layouts, environment variables, and troubleshooting.
Quick check after the container is running:
curl -sf http://localhost:3000/health- Rust (stable) - Install via rustup
- wasm-pack - install with
cargo install wasm-pack - bun - Install from bun.sh
- Python 3.11+ with uv (for lintro)
git clone https://github.com/lgtm-hq/Rustume.git
cd Rustume
# Verify prerequisites, install web dependencies, and build WASM
make setup
# Start API + web dev servers
make devUseful targets:
make build # Build WASM, server, and web bundle
make test # Run Rust and web tests
make preview # Preview production build locallyuv run lintro chk # Check for issues
uv run lintro fmt # Auto-fix formattingRustume is heavily inspired by and builds upon the work of Reactive Resume by Amruth Pillai. The template designs in particular are adapted from Reactive Resume's originals. See THIRD_PARTY_NOTICES for the required MIT attribution.
Rustume is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-only).
What this means in practice:
- Self-hosting for personal or internal use: fully permitted
- Offering Rustume as a network service: you must share your modifications under AGPL
- CLI and library use locally: no network interaction, so AGPL network provisions do not apply
- Template designs: adapted from Reactive Resume (MIT); see THIRD_PARTY_NOTICES
Prior commits were released under MIT; AGPL applies from the relicense forward. See also NOTICE.
Rustume follows the same licensing approach as projects like Plausible, Cal.com, Signal, and Standard Notes.