Database for managing my zettelkasten
Find a file
2025-12-21 15:16:42 +00:00
.vscode chore: add debugger launch script 2025-12-21 15:15:24 +00:00
src feat: add broken links table generation 2025-12-21 15:16:42 +00:00
tests
.gitignore chore: remove db from git 2025-01-21 17:44:26 +00:00
eolas-db-ERM.png
README.md feat: add full text search virt table for entries 2025-12-20 19:21:18 +00:00
setup.py

eolas-db

A Python application that parses Markdown entries in my zettelkasten, extracts the content and metadata and inserts it into an SQLite database.

It is a constituent part of my knowledge management system comprising eolas, eolas-api, and eolas-app.

Usage:

app.py --source="/my-zettelkasten-entries" --target="/tmp/zettelkasten-output-dir"

  • --source
    • The directory containing the Markdown files
  • --target
    • The location where the resulting SQLite file should be save

Local development

source venv/bin/activate
python3 src/app.py --source="/my-zettelkasten-entries" --target="/tmp/zettelkasten-output-dir"

Production

Generate single executable

source venv/bin/activate
sudo pyinstaller --onefile ./src/app.py --distpath="/usr/local/bin/eolas-db"

Run executable

/usr/local/bin/eolas-db/app --source="/my-zettelkasten-entries" --target="/tmp/zettelkasten-output-dir"

ERM

ERM diagram for eolas-db

In addition to the tables listed in the diagram, there is a full-text search virtual table applied to entries. This enables search queries against the text of every entry.