I build frameworks and use others.
Case studies across TypeScript, React, Svelte 5, Rust, Go, Python and AI tooling, exploration over finished product.
DDD multi-tenant platform with MongoDB-like query engine
Full-stack monorepo powering Idae-Machine, a domain-driven multi-tenant SvelteKit application. Ships a MongoDB-like query engine, real-time socket layer, reactive state management, and a pluggable API backend, all typed end-to-end in TypeScript.
AI writing assistant: production since v1.0
Full-featured writing application with real-time AI suggestions, narrative coherence analysis, and mobile-first design. Built on SvelteKit 5 and Tailwind v4. Production-ready since v1.0 with a clean, distraction-free editor.
Shared agent memory with decay, cues and reviewed routines
Memory engine for AI agents modeled on human recall. It keeps decaying traces, open intentions, provenance and reviewed cognitive scripts in SQLite, then retrieves them through lexical and vector search. Claude hooks plus explicit Codex, Kimi Code and OpenCode importers feed one MCP store; background maintenance stays off the agent path and falls back to deterministic local processing when no model is available.
One MCP control plane for Kimi, Codex, OpenCode and Ollama
Extensible MCP control plane that puts ACP, CLI and HTTP-backed agents behind one supervised interface. Bundled adapters cover Kimi, Codex, OpenCode and Ollama; sessions, live progress, cancellation, usage and results follow one contract. Write-capable runs use authorization tokens scoped to the agent, working directory, mode, lifetime and use count.
Rust UI framework for reactive web and native desktop apps
Alpha Rust UI framework with signal/effect reactivity, RSX macros, scoped CSS, keyed lists, routing, context and a growing component library for WebAssembly apps. Its independent desktop runtime uses native webviews without Tauri, and the CLI can scaffold projects and assemble portable desktop bundles.
Local-first AI chat with Ollama and optional CLI providers
Wollama runs on the web, on desktop through Electron and on mobile through Capacitor. Ollama is the default for local inference, and installed Codex, Claude Code and Kimi Code CLIs can handle text chat through their own services. Conversations, companions and settings stay available offline and sync through RxDB and PouchDB when the server returns.
Native CSS design system: modular, themeable, zero build
Published CSS design system built entirely on native platform features: cascade layers, OKLCH, light-dark(), CSS @function, and typed attr(). Version 0.7.13 ships modular entry points, reusable components and utilities, plus ten token-only demo skins—with no preprocessor, build step, or JavaScript runtime.
AI-driven scene and story production pipeline
SvelteKit SPA for orchestrating AI-driven story and scene production. Combines an interactive timeline editor with asset management, real-time model inspection, and a CI pipeline on GitHub Actions.
AST-based metadata extractor for Svelte 5 components
Parses Svelte 5 component source via AST to extract props, exports, generics, and JSDoc comments, generating structured documentation without invoking the compiler. Drop-in for any TypeScript toolchain.
Vanilla HTML component system: 7.7 KB, zero dependencies
Zero-dependency vanilla HTML component system at 7.7 KB gzip. Provides a structured tag taxonomy, display-hint suffixes, and WCAG 2.2 AA accessibility out of the box, no build step, no framework, no lock-in.
ProtonMail via IMAP/SMTP/CardDAV: MCP bridge over hydroxide
MCP server that bridges ProtonMail's encrypted ecosystem to any standard mail client. Built on top of hydroxide, it exposes IMAP, SMTP, and CardDAV endpoints. Ships with Windows auto-start and zero-config setup.
Local resume tailor: Ollama rewrite, ATS PDF, Playwright autofill
Local-first tool that matches your resume to a job description, rewrites targeted sections with Ollama, generates ATS-friendly PDFs, and auto-fills job applications via Playwright. No cloud, no subscription, no data sent externally.
Local job-mail tracking with a CLI, TypeScript API and MCP server
Mailboard brings job-related messages from Gmail, browser mail and Proton Mail into a searchable local dashboard backed by append-only JSONL files. Proton collection uses read-only IMAP through Proton Mail Bridge. The @medyll/jobmailboard package exposes message search, ingestion and cycle orchestration through a CLI, a JavaScript/TypeScript API and a stdio MCP server.
Hiking catalogue and valley event calendar for the Alpes-Maritimes
Browse 221 hikes by valley, elevation gain and route features, then check what's on in the area on your chosen date. Each route has a GPS trace and an elevation profile. The static site keeps its catalogue, filters and traces available offline, with online OpenStreetMap tiles for the zoomable map.
Android on-device OCR sensor synced over Tailscale
Android screen-capture sensor for Oppo Find X9. Triggers via Snap Key, runs on-device OCR with ML Kit, and syncs results to an OpenClaw desktop instance over Tailscale, replacing Oppo's proprietary AI Mind Space with a fully self-hosted pipeline.
Windows 11 notepad backed by a single Markdown file
Minimal WinUI 3 notepad that persists everything in one Markdown file. Auto-saves every 2 seconds with optional LLM normalization to keep notes structured. Single binary, no sync service, no account.
Migrating a 2014 PHP/MongoDB CMS to a 2026 stack
Idae Legacy moves a 2014 PHP 5.6, Node.js and MongoDB CMS to PHP 8.2 while keeping the original interface. Apache/PHP and Socket.IO share a supervised Docker image. The migration updates Smarty for PHP 8 and checks rendering and MongoDB aggregation behavior in CI.
Client-side IndexedDB the easy way, with server sync
Client database IndexedDB the easy way, add server sync
Research space for formal languages of cognition and org structure
Exploratory research project defining two formal languages, a matrix topology language and a dynamic structural mapping model, to express cognition and organizational structure. Includes an LLM engine for generating context-aware indicators across 9 domains and an interactive 3D visualization built with Three.js.
Callback-based DOM manipulation library, always returns the root
A DOM walk and manipulation library with a callback-based approach for precise element targeting. Unlike jQuery-style chaining, idae-be always returns the root object, using callbacks to reach into nested matches while keeping the chain consistent.
CSS and DOM mutation observers for reactive UI code
Library for observing and reacting to DOM changes: cssDom tracks animations, style changes and resize events, htmlDom.track observes attribute, child-list and character-data mutations. Built for dynamic web applications that need fine-grained change detection.
Framework-agnostic SPA router with SWR cache and typed HTTP fetching
Lightweight, framework-agnostic client-side router: path parameters, query parsing, lifecycle hooks, declarative HTTP data fetching, an in-memory SWR cache, and full TypeScript generics. Supports nested routes and outlets.
Universal deep-reactive state via native Proxy, zero dependencies
Lightweight, universal, deeply reactive state management library. Uses native Proxy to track mutations at any depth in objects and arrays, and exposes both onchange callbacks and a standard EventTarget API, isomorphic across Browser, Node.js and SSR.
Offline-first sync engine: outbox, retries, conflict resolution
Syncs local IndexedDB data to a server automatically, in the background, even offline. Writes are intercepted into an IndexedDB-backed outbox with exponential backoff, circuit breakers, a dead letter queue, and pluggable conflict resolution (last-write-wins, shallow or field-level merge).
PHP/MongoDB REST + IDQL API for the Idae platform
Lightweight PHP REST API backed by MongoDB, built around a router → API parser → query layer pattern. Exposes a custom IDQL query language for find/group/distinct/parallel operations alongside generic REST endpoints, plus a small Node helper process for sockets and crons. Dockerized with a PHPUnit test suite.
2019 Ansible playbook provisioning a telco API stack
Legacy Ansible playbook provisioning a telco API platform (PHP7, Nginx, MySQL, Redis) across dev/preprod/prod. Environment identity and per-host config live in group_vars/host_vars, keeping the common role environment-agnostic. Archived as a portfolio reference with credentials stripped to ansible-vault placeholders.