π¨βπ» Developer Manual
Welcome to the Developer Manual. This section contains in-depth technical documentation about the LibreFolio architecture, codebase, and development practices.
π Getting Started
Set up your local development environment and learn the daily workflow:
- π¦ Installation (Development) β Clone, install dependencies, start the server
- π Development Workflow β All
dev.pycommands at a glance
Quick start
ποΈ Architecture & Technologies
- πΊοΈ System Overview β High-level system diagrams, tech stack, and design decisions
- π§© Technologies & Patterns:
- β‘ Async Architecture β async/await, aiosqlite, non-blocking I/O
- π Registry & Plugin System β Provider plugins for BRIM, Assets, FX
- ποΈ Database Migrations β Alembic workflow, SQLite batch mode
- βοΈ Configuration β
.env, Pydantic BaseSettings
- π Core Systems:
- π‘οΈ Security & Authentication β JWT cookies, endpoint protection
- π€ Users & Roles β Login flow, session, user roles
- π Access Control (RBAC) β Broker sharing permissions
- βοΈ Settings System β Global + user settings, fallback logic
- ποΈ Database Schema:
- π Overview β ER diagram, design philosophy
- π€ Users & Access Β· π¦ Brokers & Transactions Β· π Assets & Pricing Β· π± FX Rates & Routes
βοΈ Backend
- π₯ BRIM (Broker Report Import Manager) β CSV/Excel import pipeline, plugin architecture
- π Asset Pricing & Metadata β How asset prices and metadata are fetched and managed
- π± Foreign Exchange (FX) β Multi-provider currency conversion system
- π FX Configuration & Routing β Chain routing algorithm
- ποΈ FX Providers List β ECB, FED, BOE, SNB details
- ποΈ Database Schema β SQLite schema split by subsystem (Users, Brokers, Assets, FX)
π¨ Frontend
- π₯οΈ Frontend Development β SvelteKit architecture, Svelte 5 Runes, directory structure
- π§± Components β Reusable UI component library
- π Pages β Application pages and routing
- π¦ State Management β Stores and reactive state
- π¨ Styling β Tailwind CSS 4 and theming
- π Internationalization (i18n) β Multi-language support, audit CLI, key management
- π FX Chain Algorithm β DFS + graphology for multi-step FX routes
π API
- π API Overview β OpenAPI-first workflow, schema export, TypeScript client generation
- π API Reference β FastAPI endpoint documentation
π§ͺ Testing
- π Test Walkthrough β Full guide to the 10-category test suite
- π§ Backend: External, Database, Services, Utils, Schemas, API, E2E
- π Frontend (Playwright): Front-Utility, Front-User, Front-FX