recordum

In progress · 2026

“Record your existence.” Recordum aims to be a complete journal of your life: not just what you did, but how much, how you felt and what you wrote. Habit apps usually only ask “done or not done?”. Recordum is built for people tracking subtler things: health, sleep, training, writing, abstinence, mood. Every habit is one of five types: an action, a counter, a resistance, a journal, a state. Habits nest into a tree, so a complex need is built by composing simple habits. Data stays on the device, encrypted, and no account is needed.

I started it in May 2026 and it's the most ambitious of my projects, and the most personal: it comes from my own need to log certain habits every day.

What it does

You create a habit from a template or from scratch, and configure it: how often it repeats, goals, what you measure and in which units, value scales, a built-in timer. Logging it takes one click from the main screen. If you forget, you can log past days too.

Every habit has its own page: a heatmap of recent months, the streak of consecutive days (aware of when the habit is scheduled) and the list of entries. Next to the numbers there's writing: a personal journal with a full text editor, and quick notes you can attach photos to.

Data can be explored with custom charts and exported to PDF, HTML, Markdown, JSON or CSV. Backups are encrypted, automatic if you like, and a backup restores everything.

The interface is in English and Italian, with light and dark themes and keyboard shortcuts. A plugin system adds features without touching the program's core: charts and export are already built that way.

How it’s built

It's written in C# on .NET 10 and split into layers, each with one job. At the centre is the domain: habits, their rules and calculations like streaks, in plain C#, knowing nothing about the interface or the database. A data layer stores them in a SQLite database encrypted with SQLCipher, through EF Core. The key is never written in the code: Windows protects it, or a passphrase the user chooses. On top sits the desktop app, in WPF with the MVVM pattern.

Alongside, a plugin system: the program declares points where something can be added, and plugins fill them. Charts and export are the first two.

Domain, data and plugins don't depend on the interface, and are meant to be reused as they are in the future phone version.

Stack

  • C#
  • .NET 10
  • WPF
  • EF Core
  • SQLite
  • SQLCipher
  • LiveCharts2
  • QuestPDF

Where it stands

The Windows version, built with WPF, reached the stabilization phase toward its first complete release: the core works, and bugs, charts, export and the look were being fixed. It's now on hold, because I'm moving the interface to Avalonia, which will become the only platform: for desktop, Windows, Linux and macOS, and later for phones, Android and iOS. The foundations are in place: the interface logic no longer depends on Windows, and its tests run on Linux too.

Unlike quaestio, it has a large suite of automated tests, over 1600, covering domain, data, plugins and interface.

What’s next

First, finish the port and reach version 1.0, then bring it to phones.

Then the real ambition: a “definitive journal” of each day, gathering on one page, to read or export, everything you did, measured and wrote that day. And comparing data, to spot patterns you can't see on their own: on days I sleep less, is my mood lower? Do I eat more?

Later, syncing between devices without a server of my own, through the cloud people already use (Dropbox, Google Drive, OneDrive, iCloud), and a plugin system open to others too. Recordum is meant to be open source: the code will be public when it's ready.