Skip to content

Things I'm Building

What's happening in the lab - side projects, experiments and DJ mixes.

AI + Software

Vantage (Market Analysis Tool) screenshot

Vantage (Market Analysis Tool)

shipped
started 2026-06-26 ·last touched 2026-09-07

An AI-driven research partner for stock-market decision-making. It scans a ~915-ticker universe for hidden opportunities and emerging trends, fusing hard signals with self-sourced news to challenge my reasoning — not just inform it. Two modes: a proactive weekly brief that surfaces blind spots and non-obvious second-order plays, and a conversational analyst (terminal + web) that pressure-tests theses, re-runs the screen live, and plans real tax-lot-aware liquidations. Conversations persist across sessions and carry approved memory forward, so it builds on what I've already told it. Every new signal earns its place — pre-registered backtests and an evidence register keep the analyst honest. Grounded in Wake, my portfolio analysis tool, so every recommendation is rooted in what I actually hold.

2026-09-07 →Two pre-registered studies on the leader cohort — band width refuted (lowering the bar measures as harmful); cohort narrowness unresolved.
2026-09-07 →Both analysts now see when positions were acquired; a portfolio unavailable at conversation start recovers mid-conversation.
pythonanthropicclaudeyfinancefastapimysql
Wake (Portfolio Analysis Tool) screenshot

Wake (Portfolio Analysis Tool)

shipped
started 2021-01-29 ·last touched 2026-10-10

A personal portfolio history and decision-analysis tool. Imports brokerage transactions across multiple accounts, computes multi-dimensional performance across a nine-tab dashboard, and replays past decisions ("hypotheticals") to turn hindsight into sharper future ones. A natural-language chat tab answers questions and draws charts on the fly. A tax-lot ledger exposes open FIFO lots per symbol and account — the data Vantage reads to plan real future decisions.

2026-10-10 →Ship the Today landing tab — hero, movers, contribution, composition, and a rule-driven attention panel.
2026-10-10 →Shared chart layer across every tab — validated palette, direct end-of-line labels, small multiples, gain/loss bars, viewport-aware figures.
pythondashmysqlplotlyanthropicyfinance

Liber

building
started 2026-09-30 ·last touched 2026-10-13

A personal knowledge base about me — work history + expertise, life, passions, values, health + fitness, the people in my life, etc. — kept as plain Markdown in a private git repo, so any LLM, chatbot, or agent can use it as "context about me". Named for Carl Jung's Liber Novus: an honest, accumulating record of a whole person. Capture happens anywhere — quick notes and documents from my phone via Obsidian, or voice interviews where a full-duplex voice asks questions while Claude quietly reads the vault and steers the follow-ups. With passive capture, my everyday Claude sessions notice things worth keeping as I work — how I write, opinions, preferences — and propose them to the vault for review. An `/ingest` skill in Claude Code turns everything into dated, sourced edits I approve one by one. An MCP server lets Claude, ChatGPT, and other tools read the vault — with sensitivity tiers so private files never leave my machine.

2026-10-13 →Passive capture — Claude sessions notice my writing voice, opinions and preferences as I work and propose them to the vault via MCP, with my approval.
2026-10-08 →Health and finance areas for new vaults, split by sensitivity; account identifiers never recorded.
pythonmcpfastmcpanthropicopenaiobsidian
rickbo.one (Personal Website) screenshot

rickbo.one (Personal Website)

shipped
started 2026-03-28 ·last touched 2026-10-08

Next.js + Vercel rebuild of my personal site. JSON-driven content layer, no CMS.

2026-10-08 →Add Liber to /building; render bold emphasis in project cards.
2026-09-12 →Add Trainspotter to /building.
Next.jsTypeScriptVercel
Trainspotter screenshot

Trainspotter

shipped
started 2026-08-30 ·last touched 2026-09-13

A CLI tool that identifies every track in a DJ set from a YouTube/SoundCloud URL or local audio file, and prints a timestamped tracklist. It slices the audio, adaptively probes fingerprinting services (Shazam's unofficial endpoint for free, ACRCloud as a paid fallback), then reconciles the results with parsed comment-tracklists into a coverage- and confidence-annotated report. It won't beat hand-Shazaming a set track by track — but it covers hours of audio unattended, so you get a defensible starting point to fill in by ear.

2026-09-13 →Save a markdown tracklist by default (--no-save to opt out), never clobbering another set's report.
2026-09-11 →Live progress output while a scan runs; stalled recognition requests now time out instead of hanging.
pythonclishazamioacrcloudyt-dlpffmpeg
DJ Locator screenshot

DJ Locator

shipped
started 2026-03-18 ·last touched 2026-09-07

Locally-run web app that fetches upcoming tour dates (for up to 12 months) for my favorite DJs. Events are displayed on an interactive map or sortable list, with time-range and proximity filters.

2026-09-07 →Fix Starlette TemplateResponse signature; drop unused Playwright dependency; move to port 8002.
2026-06-28 →Genericize event-data source references for public release.
pythonfastapisqlitehtmxleaflet
Semantic CRM screenshot

Semantic CRM

paused
started 2026-02-07 ·last touched 2026-06-22

A semantic knowledge graph for professional network management. Uses embeddings and LLM's to support natural-language queries like "Do I know any product engineers in Europe?" and surface potential introductions.

2026-06-22 →Add email validation via pydantic[email].
2026-02-07 →Initial commit: Semantic CRM with LinkedIn Apify profile scraping.
pythonfastapipostgrespgvectoropenaianthropicllama-index

DJ Mixes

MIX 003tech house · disco house

ChicagoBound

Mixed 2 hours before getting on a flight to Chicago. Bit of a punchy tech-house feel, which then moves into some filter-y disco house shenanigans.

MIX 002house

Pre—Workout

Mixed spontaneously just before heading to the gym. Hands-in-the-air house bangers and some fun acapellas + edits. Built to keep you moving, on both the dance floor and gym floor

MIX 001house

FirstGear

Opens with one of my favorite dance rock tracks, then drops into a set of grooving house and tech-house.

Let's talk.

Open to conversations about engineering, AI, side projects, or anything you're building.

Email Me (opens in new tab)