Sites, tools, and the behind-the-scenes systems that run them. Most are live. Take a look around.
These are some of my sites, tools, and behind-the-scenes systems to see what still works on the internet. Some are useful. Some are weird. Most are live. All of them are part of the same bigger experiment:
Can one person build, run, and scale a stack of useful little businesses with AI, automation, taste, and the resolve to sit with problems until they're fixed?
Can specific, best-in-class internet tools still earn trust, traffic, and money in a world where search, content, and software are all being rewritten as fast and faster than today?
Can each project make the next one easier by sharing the same systems for research, publishing, design, analytics, and distribution?
Can people besides me actually use this stuff to save time, make better decisions, or solve annoying problems they already have?
Start anywhere. Each one links down to its own section below.
Most people build a website. I build connected pieces that hand off to each other. A content factory turns raw sources into published pages. Then separate agents keep working on what's live: enriching it, checking it for slip-ups, and acting on what the data says. The factory is only the first stage. The rest is what keeps everything getting better on its own.
Publishing is the start, not the end. A set of agents keeps going back over everything that's live, and what they learn feeds straight back into the next cycle.
Revisits published pages and makes them better: stronger internal links, richer comparisons, fresh picks. Nothing is left as a thin first draft.
Checks the sites on a schedule for broken links, stale facts, mangled formatting, and near-duplicates, so the embarrassing stuff gets caught before a reader finds it.
Reads the traffic and search signals and responds: what's working gets expanded, what's flat gets reworked or retired. The sites bend toward what actually lands.
A soy-free snack site that does the tedious label-reading for you.
Every product on the site gets a clean photo and an honest ingredient check pulled straight from each brand's own store feed, not scraped off Amazon, and the ones hiding soy get flagged. A brief becomes a draft becomes a scheduled post automatically, with gates that catch thin, junky, or duplicate writing before it can go live. The whole thing runs on the shared factory backbone, so a new category is a database row, not a deploy.
Podium cards, product montages, and allergen chips render from the database. New ranking, no new code.
Photos and ingredients pulled from each brand's Shopify feed, re-hosted, and soy-checked.
Airtable brief to local or Claude writer to drip-published post, with quality gates in between.
Google Analytics and Search Console in one admin panel: who showed up and what they searched.



Under the hood it's a two-part machine. A digest engine scrapes fourteen Bulgarian news sources, clusters the same story across outlets, scores each cluster for how much the diaspora would care, and hands the winners to an AI writer that drafts them in a Morning-Brew voice. A separate image agent gives every article on-brand art. I approve at two gates; the rest runs on a schedule.


It's a fully functional tool wrapped in an SEO engine. The bag-size checker answers the exact question people type. Underneath, a content pipeline reads briefs from Airtable, drafts articles with a local LLM, and drips them out as power pages targeting a long tail of airline-and-bag queries, each seeded with affiliate product cards. Thousands are queued so it can surface in Google, AEO, and GEO.
Audience of one, me. The pattern is anyone who wants their body and health data rendered like a cockpit, not a spreadsheet.
Two anatomical bodies render a live thermal map of what I've stretched and what I've neglected, plus an injury catalog with lock-on reticles. A Telegram agent named Hermes writes the data into Supabase; the dashboard just reads it and re-colors itself, drifting a region toward red as it goes untouched. It's a personal-dashboard template dressed as a fighter-jet HUD.
Front and back body maps, green when recently stretched, red when neglected. Drifts on its own.
An injury catalog with reticles, severity, and a checkup cadence for jiu-jitsu wear and tear.
Hermes updates it over Telegram; the dashboard reads Supabase and refreshes every 30 seconds.

You pay $29, it crawls your site, pulls deterministic signals like schema, robots, and metadata, then runs one big model pass that grades you across three channels: can Google find you, will an assistant cite you, will it recommend you. Out comes three scores and a prioritized fix list. Payment is the gate, so there's no way to burn tokens without a sale behind it.
Ask about a restaurant and an agent reads the menu, allergen docs, and diner reports, then returns a cited, dish-by-dish verdict against your allergy profile. It never says "safe"; it shows the receipts or tells you exactly what to ask the server. Each restaurant is researched once and cached, so cost scales with the catalog, not with traffic.

It pulls the scattered signal of a place, local news, events, openings, and social chatter, clusters it into a week's worth of stories, and drafts each one in a dry, funny, second-person voice before laying it out as a finished issue. Flagship city editions for St. Pete, Scottsdale, and Charlotte show the range, and a Supabase-backed CMS lets me edit and publish any of it.
This is a human-paired service, not software you're handed. An exceptionally content-literate operator stays in the loop on every piece, using industry-leading systems for research, drafting, and distribution to ship more in a week than most teams do in a quarter, without losing the judgment that makes content worth reading. The site itself is the funnel: a free recorded "content teardown" captures the lead, wrapped in light and dark espresso theming, a GSAP scroll build, and a blog grounded in real work.
A separate rate-checking service verifies every number against the bank's own page before it appears here, so a stale rate shows its age instead of quietly lying. Seven calculators let you run your own situation rather than read someone else's example. The ranking is not for sale, which is written down in the repo rather than promised in a footer, because the entire value of a comparison site is that it has no reason to lie to you.
The interesting part isn't the writing, it's that the editorial promises are enforced by the build. Review disclosure and affiliate disclosure are assertions in a rules file, so a post that skips them fails to build instead of quietly going live. Most sites make those promises in an About page and rely on somebody remembering. Here it's the deploy's job, not mine, which is the only version that survives a busy week.
Every previous site here cost me a week of plumbing before a single word got written: domain, DNS, hosting, database, secrets, CMS, admin, analytics. Dessertsgram got all of that from one command, and the repo holds only what makes it a dessert site rather than a snack site. The proof that the factory works isn't the tooling. It's that this page exists and reads like the others.
The hard part of a marketplace like this is trust in both directions. Sellers won't publish numbers next to their brand name, and buyers won't take an anonymous listing seriously. So names stay private until a seller approves a specific buyer, while the numbers stay public from the start. Everything I've learned running these sites is what tells me which listings are honest and which are a spreadsheet with a story attached.
Every site above taught me the same lesson twice: the interesting work is the site, and the week before it is plumbing. Domain, DNS, hosting, database, secrets, CMS, admin, analytics, all rebuilt slightly differently each time, all of it drift waiting to happen. So the last stretch went into an assembly line instead of another site. Dessertsgram is the first thing to come off it.
One command takes a bare domain and does the whole boring sequence: DNS, hosting, database, secrets, and the registry row that tracks it. It shows you exactly what it will do before it touches anything, so a launch is a decision rather than an afternoon.
The database layer and the admin panel are installed packages every site shares. Fix a bug once and every site gets the fix, instead of hunting the same bug through nine repos that have quietly drifted apart.
New sites are generated from one template. Pages, admin, SEO, and the publish gate come from the shared packages, so the repo itself holds only what makes it that site: its brand, its voice, and its editorial rules.
The plumbing that used to eat the first week of every site is now a command and a brand interview. That's the difference between testing an idea and committing to one.
Disclosure rules, the responsive check, the admin panel, the analytics module. New sites start with all of it instead of me remembering to add each one on a Friday.
Tooling is a bet against your future self's patience. It has produced one site so far. If it produces five more it was obviously right, and if it doesn't, it was an expensive way to avoid writing.
None of these are sites. They're the plumbing the sites run on, built for myself first and shared once they survived real use. Sites come and go. This layer is what lets one person keep all of them running.
An M4 Mac mini and a gaming PC with an RTX 5060 Ti (16GB) run open models like Qwen in LM Studio. There's enough memory here for genuinely capable models, not toys, so most of the drafting, classification, and high-volume work never leaves the network. Only the hardest calls go to Claude. That's the quiet moat: while everyone else rents intelligence by the token, most of my pipeline runs on metal I already own, and it gets stronger every time the open models do.
I run my own scraper, so pulling a page costs nothing and never gets rate-limited. Paid services are only a backup for when it's offline.
Every model call is metered against a budget, and a run stops itself if it drifts past twice the estimate. I learned to build these the expensive way.
A single panel manages 1,000+ affiliate links across all the sites, matches products to an article, and only places them when I approve. Nothing writes to a post on its own.
Keys and settings live in one managed place, pulled only at runtime and rotated in one spot. Nothing sensitive gets copied around between projects.
Traffic and search data land in one in-house dashboard that any new site inherits, so I can see what's actually working without logging into a pile of tools.
A service gives every article its cover image without a designer, and keeps the look consistent across sites. Change the brand once and all of them update.
The biggest product is the whole system. A couple of the smaller tools stand on their own too, and there's a longer list forming behind them.
The most useful thing I've built isn't any single tool, it's the way they fit together. I can stand up a self-improving content operation for a niche from scratch, or drop the pieces into a business that already publishes: the content factory, the enrichment and audit agents, the analytics loop, the affiliate layer. Same playbook that runs the sites above, aimed at what you're trying to grow.
Let's talk →Every marketer and agency owner stares at a page that won't convert and can't say why. Point it at any URL and it returns the diagnosis plus rewrites, which also makes it a foot-in-the-door for winning those same people as clients.
It scrapes a live page for free, scores it across four channels (conversion copy, SEO, AEO, GEO) using local Lighthouse and a live "does AI cite you" probe, then renders an Apple-clean PDF with quoted findings and ready-to-paste fixes. A blind eval harness keeps the copywriting honest.
Every site in the factory needs on-brand art for every article, with no designer in the loop. One deployed service keeps a growing content operation visually consistent.
Give it a post and it decides between a real photo, a branded type card, or generated art, wraps the result in a deterministic brand frame, uploads it, and writes the URL back to the post. Edit the brand kit once and every site gets it.
I practice what I build. If something survives my own workload, it earns the right to be shared.