BLOG.
Notes from building — dev, AI and hosting. What I ship, how it works and why.
// FILTER
// INDEX 19 POSTS
PROJECTS
Four levels of HTML, one JSON, and a Volvo: parsing a parts catalog with no API
Every car brand structures its parts catalog navigation differently. Volvo goes four levels deep, Nissan has a two-phase BOM. Here's the parser architecture that handles all of it without turning into a mess.
AUTODILYWEB SCRAPINGPARSERNEXT.JSCASE STUDY
CORESYNTH
When AI Model Prices Change Every Week
CoreSynth now syncs AI model prices automatically from the upstream catalog. It doesn't just overwrite numbers — it guards against price spikes, writes an audit trail, and separates estimates from reality.
CORESYNTHAIPRICINGAUTOMATIONBILLING
PROJECTS
Login events don't belong in the audit log
Why login history in the J+P Autodíly admin panel gets its own table instead of sharing the audit log — and why the login record must never touch the critical path.
autodilyadminsecuritydata-modelnextjs
PROJECTS
Product feeds: getting a bike shop's catalog onto shopping comparators
Why having an e-shop isn't enough — and how a single generated XML feed puts a small bike shop's catalog in front of shopping comparators, twice a day, with no manual work.
nextjseshopfeedmedusacase-study
PROJECTS
Admin Filters Without a Filter Button — URL as State
Why we removed the Filter button from the J+P Autodíly admin panel and let filters write directly to the URL. Debounce, server-rendered listings and progressive enhancement in one shared component.
nextjsuxautodilyadminurl-state
PROJECTS
Dispatch Board: Ship Orders from the Warehouse in One Click
Why a delivery note per order wasn't enough — and how a single page grouped by delivery routes, one button per route, and an order timeline transformed warehouse operations.
nextjseshopautodilyworkflowcase-study
PROJECTS
Live admin panel without F5: Server-Sent Events in a B2B e-commerce shop
Why 'just refresh the page' doesn't cut it when an admin monitors orders in real time — and how a single SSE pipe with a fingerprint replaced ten polling queries.
nextjseshopautodilyssebackendcase-study
PROJECTS
Barcodes, Camera and OCR: Receiving Goods by Phone in a B2B Auto Parts Shop
Why typing part numbers on a phone keyboard while standing at a pallet is the wrong workflow — and how a mix of native scanning, WebAssembly and server-side OCR turns a phone into a receiving terminal.
nextjseshopautodilybarcodeocrcase-study
PROJECTS
Invoicing, State Machines and VAT: What a Proper Billing System Looks Like in a B2B E-Shop
Why storing a few numbers in a database isn't enough — document state transitions, correct VAT splitting from gross prices, and a unified outstanding balance for both admin and customer.
nextjseshopbillingautodilycase-study
CORESYNTH
Granular Tool Permissions for AI Agents
An AI agent needs access to tools — but not all tools are equally risky. Orca introduces per-tool permissions with a YOLO mode, giving each tool its own trust level.
ORCAAISECURITYPERMISSIONSAGENTS
PROJECTS
When a hair salon needs a salon website, not a SaaS template
Complete redesign of the Sarah Hair Salon homepage — from a generic SaaS template to an editorial experience that actually looks like a salon.
SARAH HAIRREDESIGNNEXT.JSUXEDITORIALSALON
PROJECTS
Language detection by location — zero-server static site
How I added automatic language switching to my portfolio based on timezone and browser language — entirely client-side, no API, no flicker.
I18NASTROSTATIC SITEJAVASCRIPT
ORCA
Orca: parallel DAG instead of a sequential chain — more agents, less waiting
Mission planning in Orca no longer forces a sequential pipeline. The planner now builds a dependency graph where independent phases run in parallel and actually use the available agent capacity.
ORCAAIDAGPARALLELISMAGENTSPLANNING
ORCA
Push notifications with inline actions — Orca on your phone
Orca now sends web push notifications to your phone. When an agent needs your input, a phase needs approval, or a mission finishes, you get a notification with action buttons right in it.
ORCAAIPWAPUSHNOTIFICATIONSMOBILE
ORCA
Orca — per-task PR workflow control
Every task in Orca can now have its own GitHub PR setting: default, on, or off. Two bugs were also fixed that allowed shipping a partial PR before the mission was complete.
ORCAAIAGENTSGITHUBPRWORKFLOW
SARAH HAIR
Calendar feeds for stylists — salon bookings straight in Google Calendar
Every stylist now gets her own ICS link for bookings. Connect it to Google Calendar, Apple Calendar, or Outlook and you'll see all your appointments without logging into the admin panel.
SARAH HAIRBOOKINGSICSCALENDARSALONOPS
CORESYNTH
Prompt caching in Alex: from 0% to 19% hit rate
Alex generates massive system prompts — hundreds of thousands of tokens. OpenAI automatic prefix caching is free, but only when the prefix stays stable. Here's how a single timestamp bug was killing the cache, and how we fixed it.
AIOPENAIPROMPT CACHINGCORESYNTHALEXPERFORMANCELLM
INSIGHTS
One memory for AI agents: Claude Code, Codex and Hermes in the same context
AI tools are powerful, but each one usually lives in its own thread. So I built a shared memory layer that connects Claude Code, Codex and Hermes into one long-term context.
AIMEMORYAGENTSCLAUDE CODECODEXHERMES
CORESYNTH
Making AI billing transparent: progress bars, token breakdown, and a user-cost modal
I stopped showing users raw numbers and gave them progress bars, a clean token breakdown, and a modal with cost projections instead. Here's how and why.
AIUXCORESYNTHBILLINGTRANSPARENCYPROGRESS
// NO POSTS IN THIS CATEGORY