Lab

Prototypes and test rigs. Not products: each one answers a single question.

vegtam

prototype · 2026

Decentralized messenger on credo-ts/DIDComm: no accounts or phone numbers, blind store-and-forward relays, two-hop onion routing and an offline BLE mesh between phones. Repository not public yet.

Hard part: Durable relay queue on Postgres (FOR UPDATE SKIP LOCKED, requeue of stuck messages, TTL) that survives a restart; credo keeps it in memory by default.

TypeScript credo-ts DIDComm PostgreSQL React Native / Expo

portage

prototype · 2026

Share a folder by link through a relay that cannot read it: the key lives in the URL fragment and never reaches the server.

Hard part: Nonce derived from the chunk index: parallel download in any order and resume without extra signalling.

Node.js Web Crypto AES-256-GCM File System Access API

Server fleet

live · 2025–2026

Ansible for the whole fleet: provisioning, deploys for 23 projects, secrets in vault, backups, Traefik, monitoring with blackbox probes and alerts.

Hard part: One project registry drives everything: an entry produces the deploy, the external probe and the alert. A new project is one entry.

Ansible Docker Compose Traefik WireGuard Prometheus Loki Grafana

overloader

wip · 2026

A structured conversation protocol run by a state machine in code. The LLM only phrases each step and parses the reply into structure.

Hard part: Simulation harness: 30 invented personas, a judge, an oracle and protocol-conformance checks.

TypeScript Fastify PostgreSQL Redis React

mindmas

prototype · 2025–2026

Multi-agent system: several AI experts review an idea in deliberation rounds, each streaming into its own panel, and merge a final answer.

Hard part: Consensus weighted by each agent’s relevance to the task instead of a plain vote.

TypeScript Fastify WebSocket LangChain React

accent-trainer

prototype · 2026

Personal English pronunciation trainer on Azure pronunciation assessment and spaced repetition (FSRS).

Hard part: Azure accepts only 16 kHz mono WAV/PCM or OGG/Opus: own WAV/RIFF header and silence trimming on the device.

Expo React Native expo-sqlite Azure Speech ts-fsrs

persefona

archived · 2025–2026

Experiment: a small language model written from scratch, to see what happens inside.

Python MLX

Finished products that you can try are under Work.