Skip to content
Daneel.Dev Development

Selected work

Projects & references

Here is a selection of my work: websites and applications with different purposes, functions and approaches to design.

Make an enquiry

Desktop · Tauri/Rust · 2026

Knowledge App

Private cross-platform knowledge base (Mac/Windows/Linux): full-text and context search across thousands of articles, voice notes and transcripts. Fully encrypted, offline-capable, zero-knowledge sync.

The video shows a purpose-built demo version with altered sample content: the client behind this app prefers the real content not to be published.
lines TypeScript · React
87,000
lines of Rust
76,400
automated tests
900+
database migrations
111
commits since April 2026
1,145
systems, one codebase
3

A private knowledge base for everything you read, hear and learn. Articles and your own texts are stored and organised; voice notes are recorded right in the app and automatically turned into searchable text; book pages can be photographed and imported via text recognition, and your own Word or Pages documents drop straight in.

Search doesn't just match exact words, it understands meaning: search for "motivation" and you'll also find the paragraph about willpower, in seconds, across thousands of articles, voice notes and transcripts.

Everything lives encrypted on your own machine and works completely offline; if you want, several devices stay in sync without anyone being able to read along. And the collection stays in your hands: at any time you can create an encrypted backup of everything you ever put in. Even years from now you can still trace what you read, heard and noted today: the data model is built for decades, a knowledge collection for a lifetime.

Technical details
  • Application shell: Tauri v2 with a Rust core and a React interface. One codebase produces native installers for Mac, Windows and Linux; every call between interface and core is typed and runs through 48 command modules cut along feature lines.
  • Interface: TypeScript 5 and React 18, 317 source files with around 87,000 lines. Built with Vite 5 and Tailwind CSS, accessible building blocks from 17 Radix primitives, with a custom component library on top.
  • Application core: Rust across 63 source files with around 76,400 lines. It holds the database, encryption, search, synchronisation, import and export as well as the reports.
  • Database: SQLite with SQLCipher, the entire file is encrypted at rest with AES-256. Plain SQL instead of an ORM, so the schema stays versionable across decades.
  • Schema care: 111 consecutive migrations across roughly 95 tables, each one transactional together with its version stamp. Risky steps trigger an automatic backup first; a database written by a newer version is refused with a plain-language notice.
  • Encryption: Argon2id with OWASP-recommended parameters derives the 256-bit key from the user's passphrase, and that one key protects database, sync and backup alike.
  • Full-text search: SQLite FTS5 across the whole corpus and the user's own content. Titles weigh more than body text, and a two-stage ranking re-sorts a cheaply gathered candidate pool for exact order.
  • Context search: local embeddings with Snowflake Arctic Embed M v2.0 (768 dimensions), executed through an ONNX runtime linked straight into the Rust core. No model download at runtime, no cloud service.
  • Result list: full-text and meaning-based search run separately and are merged into one ranking via reciprocal rank fusion. The vector index is held warm in memory, which keeps warm context searches under 100 milliseconds.
  • Transcription: Whisper base, multilingual, in a dedicated worker directly on the device. The model weights ship inside the installer, and voice notes recorded in the app never leave the machine.
  • Text recognition: Tesseract for photographed or scanned printed pages. Worker, WASM core and language data are loaded from local files rather than a CDN, so the feature works offline.
  • Protected PDF viewing: course material ships encrypted only, is decrypted in the Rust core and rendered with pdf.js, without ever touching the disk in plain form.
  • Multi-device sync: the cloud storage is a pure mailbox. Every payload is encrypted with AES-256-GCM before upload, the server only ever sees unreadable blocks, and all merge and conflict logic lives in the client.
  • Licence server: a dedicated Rust service built with axum, deployed as a single binary behind Caddy with automatic TLS and a locked-down systemd unit. Activations are signed with Ed25519, so the app can verify a cached verdict offline without it being forgeable.
  • Quality assurance: more than 900 Rust test functions and 112 frontend test files, TypeScript in strict mode, two project-specific lint rules. A load simulation fills a real database with 25 simulated years of use to back up index decisions and storage budgets.

iOS app · 2026

Habit tracker: EasyLife

Gamified habit tracker for iOS: up to 8 focus areas with XP and levels, streaks with milestones, and a circadian module based on the real sun and moon cycle.

lines of Swift
22,000
source files
89
successful tests
182
third-party libraries
0
moon-phase accuracy
±2 min
months of development
approx. 3

A gamified habit tracker that splits your life into up to 8 focus areas: health, work, relationships, whatever matters to you. Every completed habit earns XP in its area, each area levels up on its own and can be weighted by priority. That's where the real value comes from: you see at a glance which area of your life is falling short and which one might be getting too much attention.

On top of that: streaks with milestones, measurable goals with numbers instead of just checkmarks, perfect-day detection when everything planned is done, automatic streak protection while travelling, and a pause mode for exceptional times.

The unique feature is the circadian module: it calculates the sun and moon cycle for your location and shows in a 4-week projection when the best moment for each habit is. The idea behind it: when you align more with your own circadian rhythm, you have more focus and energy throughout the day, and it gets easier to do what you set out to do instead of acting on emotion and habit alone.

Technical details
  • Native with no detours: SwiftUI and SwiftData for iOS 17 and up, iPhone and iPad. Around 22,000 lines of Swift across 89 files, built without a single third-party library, using Apple system frameworks only.
  • Interface: declarative SwiftUI throughout, using the iOS 17 Observation framework instead of Combine. Plus custom Shape and Path drawings, among them a procedurally drawn blossom graphic, and staggered animations.
  • Architecture: a layered model following clean and hexagonal principles, split into domain, application, infrastructure and presentation. Business logic sits in stateless, pure use cases with injectable dependencies, which makes it fully testable.
  • Storage: SwiftData with model entities, relationships including cascade delete and queries via #Predicate. Everything stays on the device: no backend, no tracking, no analytics.
  • Schema versioning: versioned schemas V1 and V2 with a migration plan, plus custom data migrations at app start that can run any number of times without doing damage.
  • First launch: an idempotent seeder creates the base data. A second demo seeder sits behind a launch argument and a compiler directive and is guarded three ways against real user data.
  • Sun position computed in-house: calculations follow Jean Meeus, Astronomical Algorithms, with ten threshold times per day from the twilight phases through to rise and set including refraction correction. Polar day and polar night are handled explicitly.
  • Moon phases: true-phase algorithm with the full periodic correction series, verified against 74 published reference timestamps. Measured deviation is around two minutes.
  • Eclipses: a custom catalogue for 2025 to 2035 with 25 lunar and 24 solar eclipses, plus visibility logic with a hemisphere filter and night-side computation for the user's location.
  • Location: CoreLocation with a single fix rather than continuous tracking, accuracy deliberately reduced to 100 metres, a watchdog timeout and a state machine covering every permission and failure case.
  • Travel mode: from 500 kilometres of distance between two GPS fixes the app recognises a genuine relocation and protects the streak automatically.
  • Reminders: local notifications with weekday-accurate triggers. A deterministic identifier scheme keeps scheduling and removal in lockstep, backed by active budget management against the iOS limit of 64 pending notifications.
  • Time logic: no implicit system time zone inside the domain, but injectable calendars and clocks. The day deliberately rolls over at 1am rather than midnight.
  • Gamification maths: an exponential level curve with a closed-form inverse, priority and prestige multipliers as well as streak and bonus systems with milestones.
  • Quality assurance: 182 unit tests across 13 classes with an in-memory database and pinned time zones, bug fixes done RED-GREEN. Plus a written security and privacy audit with prioritised findings and a documented release gate.

Sample project · Demo · 2026

Festival Website

Static festival site with smooth scroll and subtle animation, fast to load and completely tracker-free. An anonymised sample project built to showcase the approach, not a paid client job, linked here as a clickable demo.

Festival WebsiteView live
Page structure & design
HTML · CSS
Interaction & animation
JavaScript
Smooth scrolling
Lenis
Hosted font files
Local

Client website · Live · 2026

Lernbegleitung Strehl

A website for Lernbegleitung Strehl introducing the service and its owner, with original articles and direct contact options. The owner can update articles and selected content independently.

Lernbegleitung StrehlView live
lines of Astro · TypeScript
5,900
commits
126
days of development
5
third-party origins in the browser
0
mail deliverability
10/10

The website introduces Lernbegleitung Strehl, its owner and his work. A book animation opens the home page. The design connects this introduction with information about the service and its owner, alongside original articles.

The project includes layouts for mobile and desktop, a contact form and an editorial interface for articles and selected content. The owner can maintain the website independently.

The public pages are served as static files. Fonts and media are hosted on the website itself, with no embedded tracking scripts. The contact form includes spam protection and also works without JavaScript.

The website was completed and published in August 2026. The handover included guides for independent content management. The owner holds the domain, hosting and associated service accounts.

View live

Got an idea? Let's make it real.

Tell me briefly what you have in mind, even if it's still fuzzy. I'll get back to you within 48 hours.

Discuss your project