Quickstart
Get Rustume running locally with make setup, make dev, or Docker in under five minutes.
Rustume ships as a SolidJS resume builder backed by a Rust API. You can develop locally with the Makefile or run a single Docker container for a production-like setup.
Prerequisites
For native development you need:
- Rust via rustup with the
wasm32-unknown-unknowntarget - wasm-pack —
cargo install wasm-pack - bun
- Python 3.11+ and uv — for lintro linting (optional for running the app)
For Docker-only setup you only need Docker with BuildKit enabled.
Native development
git clone https://github.com/lgtm-hq/Rustume.git
cd Rustume
make setup # verify deps, install packages, build WASM
make dev # API on :3000, Vite dev server on :5173
Open http://localhost:5173 for the editor. The Vite
dev server proxies API calls to the Rust server on port 3000.
Verify the API is healthy:
curl -sf http://localhost:3000/health
# → ok
Interactive OpenAPI documentation is available at http://localhost:3000/swagger-ui/.
Docker quick start
Pull the published image and run:
docker pull ghcr.io/lgtm-hq/rustume:latest
docker run -p 3000:3000 ghcr.io/lgtm-hq/rustume:latest
Open http://localhost:3000. The container serves both the web UI and the API from a single process.
Alternatively, use Docker Compose from the repository root:
docker compose up # pull ghcr.io/lgtm-hq/rustume:latest
docker compose up --build # build locally when GHCR is unavailable
What you get
| Endpoint | Purpose |
|---|---|
GET /health | Container health check |
GET /api/templates | List resume templates |
POST /api/parse | Import JSON Resume, LinkedIn, or Reactive Resume |
POST /api/render/pdf | Export PDF |
/swagger-ui/ | OpenAPI documentation |
Next steps
- Browse the 12 templates and pick a layout
- Import an existing resume from JSON Resume, LinkedIn, or Reactive Resume
- Deploy with Docker for self-hosting