The Realm of Mortals
Midgard is where finished applications live β stable, battle-tested tools forged in Muspelheim's fire and tempered for daily use. Three CLI applications with dark fantasy aesthetics, all powered by SQLite and Rich.
The Realm of Humansβ
In Norse cosmology, Midgard is the realm of mortals β the world where people live, work, and build. In Yggdrasil, it serves the same purpose: this is where personal applications reside. Every app here is stable, tested, and maintained. No experiments. No prototypes. Only tools that earned their place.
α Midgard Rules
- Projects arrive in Midgard only after surviving Muspelheim (active dev) or maturing from Alfheim (UI prototype) or Vanaheim (AI agent).
- All Midgard apps are CLI-first, SQLite-backed, and use Rich for dark fantasy terminal aesthetics.
- Each app is self-contained β no dependencies on Asgard (core) beyond the public API. Install, run, done.
- If an app dies, it is buried in Helheim alongside its lessons.
Midgard Arsenalβ
Three tools. Three purposes. All forged with the same philosophy: local-first, zero-config, dark fantasy aesthetics.
α Finanzas β Personal Finance Trackerβ
Track income, expenses, and budgets with rune-styled CLI output. SQLite-backed persistence, per-month reports, categorization with mnemonic colors, and CSV/JSON export. Every coin counts in the realm of mortals.
- Add expenses and income with categories
- Monthly balance reports (table or CSV)
- Budget tracking with visual warnings
- Predefined categories with mnemonic colors
- Export to JSON and CSV
- SQLite persistence β zero setup
$ python3 midgard_finanzas.py add 150 comida --desc "Almuerzo"
$ python3 midgard_finanzas.py balance --mes 2025-05
$ python3 midgard_finanzas.py report --mes 2025-05 --format table
Tags: Active Β· SQLite Β· Rich Β· CLI
α² Habits β Habit Trackerβ
Build discipline with fire runes. Track daily and weekly habits, visualize streaks with rune symbols, and archive what no longer serves you (sending it to Helheim). Each check-in is a rune forged in the fire of commitment.
- Daily, weekly, and N/week frequencies
- Streak tracking with rune visualization (α )
- Weekly and monthly statistics
- Archive habits to Helheim
- 7-day progress with rune symbols
- SQLite persistence β zero setup
$ python3 midgard_habits.py add "Meditar" --freq diario --icon π§
$ python3 midgard_habits.py check Meditar
$ python3 midgard_habits.py streak Meditar
$ python3 midgard_habits.py stats --semana
Tags: Active Β· SQLite Β· Rich Β· CLI
αΊ Recipes β Recipe Manager (Grimorio)β
A grimorio for your recipes. Store, search, and organize recipes with scroll-formatted output. Plan weekly meals, generate shopping lists automatically, and export recipes as parchment-styled markdown or JSON.
- Add recipes with ingredients, steps, tags
- Difficulty rated with Norse runes (α± to ααα)
- Weekly meal planning
- Auto-generated shopping lists
- Full-text search across names and ingredients
- SQLite persistence β zero setup
$ python3 midgard_recipes.py add "Estofado de DragΓ³n" --time 60 --difficulty dificil
$ python3 midgard_recipes.py list
$ python3 midgard_recipes.py plan --days 7
Tags: Active Β· SQLite Β· Rich Β· CLI
Forged in the Same Fireβ
Every Midgard app shares the same DNA. Local-first, CLI-native, and beautiful in the terminal.
| Feature | Description |
|---|---|
| α SQLite Persistence | No external databases. No servers. Each app creates its own .db file on first run. Zero configuration required. |
| α Rich Terminal UI | Styled panels, tables, and runic headers via the Rich library. Every app feels like a dark fantasy grimoire β not a boring spreadsheet. |
| α¦ Argparse CLI | Full subcommand interfaces with --help on everything. Flags, positional args, and sensible defaults. Composable and scriptable. |
| α Tested (>20 each) | Every app ships with >20 pytest test cases covering CRUD, edge cases, and CLI argument parsing. Run pytest tests/ -v and verify. |
| α Zero External Dependencies | Only rich and Python's standard library. No ORM, no web framework, no cloud SDK. Install pip install rich and you're running. |
| α Yggdrasil Native | Built to live inside the Nine Realms. Dark fantasy naming, runic aesthetics, and architectural patterns that match the ecosystem's mythology. |
Quick Startβ
Clone the repository, install Rich, and start tracking your life. Each app is self-contained in its own directory.
$ git clone https://github.com/BrierAinz/Yggdrasil.git
$ cd Yggdrasil/Midgard
$ pip install rich
# Finanzas β track your gold
$ cd finanzas && python3 midgard_finanzas.py balance
# Habits β forge your discipline
$ cd habits && python3 midgard_habits.py stats --semana
# Recipes β manage your grimorio
$ cd recipes && python3 midgard_recipes.py list
α Self-Contained Databases
All three apps use SQLite databases that are auto-created on first run. No migration commands, no setup scripts.
Tests live in each app's
tests/directory. Runpython3 -m pytest tests/ -vfrom inside any app folder.
Midgard Healthβ
All three applications are stable and actively maintained.
| Application | Type | Status | Tests |
|---|---|---|---|
finanzas | Finance Tracker | α Active | >20 cases |
habits | Habit Tracker | α Active | >20 cases |
recipes | Recipe Manager | α Active | >20 cases |