Learn Rust by building a real application: a personal finance tracker system.
This repository contains an mdBook guide that walks through Rust application development from the fundamentals to a working multi-interface finance app:
- core finance logic with
ledger-core; - command line entry with
moneylog; - statement imports;
- terminal UI with
moneylog-tui; - HTTP backend with
budget-api; - database persistence;
- desktop app with
moneylog-desktop; - browser app with
budget-web; - analysis and release verification.
The book is a guide, not a full line-by-line tutorial. Each stage explains the goal, prerequisites, design choices, useful crates, verification checks, and what a beginner-friendly first version should do.
Install mdBook:
cargo install mdbook --lockedServe the book:
mdbook serveThen open http://localhost:3000.
.
book.toml # mdBook configuration
src/ # book chapters
VERSION # current guide version
CHANGELOG.md # release notes
.github/workflows/ # GitHub Pages deployment workflow
The generated book/ directory is intentionally ignored. Build it with mdbook build.
This guide uses semantic versioning. The current version is stored in VERSION.
- MAJOR: breaking changes to the guide structure or app contracts.
- MINOR: new chapters, stages, app contracts, or verification templates.
- PATCH: typo fixes, link fixes, clarifications, and small corrections.
See CHANGELOG.md for release notes.
The repository includes a GitHub Pages workflow at .github/workflows/pages.yml.
After pushing to GitHub, configure Pages to use GitHub Actions as the source. The workflow will build the mdBook and publish the book/ output.