DevIdiot!
Inside a 2.2 KB Signals Runtime: One Graph, One Stack, No Recursion
A reactive runtime begins with a simple idea: record dependencies when values are read, then notify consumers when those values change. The difficulty begins when dependencies change order, computations fail halfway through execution, or writes invalidate computations that are still running. Each case invites another flag, index, queue, or special rule. Eventually, much of the runtime exists to coordinate its own bookkeeping.Reflex Quant began with a different question: What is the smallest mach
I benchmarked my repo-compression CLI on a 25k-star monorepo, and it found three bugs in itself
Every new Claude Code session on my projects started the same way. The agent re-read the repository, rediscovered the design tokens, and forgot what we decided yesterday. On a large repo that is a lot of tokens spent before any real work.So I built ai-ria, a small open-source CLI that writes a .ria/ folder into your project. Your agent reads that folder instead of the whole repo:an architecture summary, routes, components and conventionsa compressed context pack, sized to a token budgetmemory th
Build a Voicemail Generator with ElevenLabs API
Why a Voicemail Generator?Ever wanted to give your phone system a personal touch without spending hours in a recording studio? With modern text‑to‑speech (TTS) services you can generate natural‑sounding voicemails on the fly. In this tutorial we’ll walk through building a voicemail generator that takes a piece of text (or a template) and produces an audio file ready to be dropped into any telephony platform (Twilio, Plivo, etc.). The star of the show is the ElevenLabs API, a powerful TTS e
I built a Theme Studio where you plug a theme into a display and watch it stream in âš¡
Hey everyone 👋My portfolio has five themes: Classic, Terminal, Notebook, Midnight and Panorama. A dropdown would have been the easy way to switch between them.I wanted switching themes to feel like plugging a cable into a screen. So I built a Theme Studio. What you can do 🎮Pick a theme from the row of cards, and it slides in under the displayWatch the display: it plays that theme's real page, live, and you can scroll itDrag the display or a card around, and the wires follow on a springHit O
4 Weird Browser Tricks Inside My $0/mo Open-Source AI UI Builder (DOM-to-Game Compiler, .glb 3D & 14k Free Requests/Day)
If you build a free browser tool with AI in 2026, you immediately hit three walls:Inference bills eat you alive the moment traffic spikes.Small/free models hallucinate broken layouts when asked to edit an existing component.Hosting user-generated pages turns into an XSS nightmare the second someone prompts <script>fetch(...)</script>.Over the past week I've been building openconstructor — an MIT-licensed, zero-signup visual UI builder that runs directly in the browser with 320+ plain
I built a zero-dependency, local-first Python & browser suite (SAST, contracts, invoices, tasks)
Most everyday developer, security, and freelancer utilities either require heavy dependency trees or upload your sensitive files (contracts, invoices, source code, meeting notes) to third-party servers.So I built IT Solutions Suite — a 100% offline, zero-dependency, MIT-licensed toolkit that runs either directly in your browser (pure client-side JS, zero server uploads) or via Python 3.9+ stdlib (pip install it-solutions-suite). Try it right now (no signup, no uploads)Live Browser Studio (V
Font Loading Is a Layout Decision: Measured Shift for swap, optional, fallback and block
Most advice about font-display stops at "use swap unless you can't stand the flash". That framing is wrong in two ways. First, swap is not a single behaviour — it is a three-phase timing contract, and what your page does depends on where the font lands inside those phases. Second, the layout shift it causes is not just "text gets slightly wider". On a page that sizes anything in ch, the swap changes the width of the container itself, which changes the line count, which moves everything below it.
Type-Safe AI Response Parsing: Integrating worldmonitor's Intelligence Pipeline
The Problem: LLM Responses Break Type ContractsWhen integrating koala73/worldmonitor into our existing infrastructure monitoring stack, the first production incident came from AI model responses violating TypeScript interface contracts. The dashboard aggregates geopolitical intelligence through multiple LLM providers, but OpenAI's structured output occasionally returned null for required fields during high-load periods, while Anthropic's responses nested arrays one level deeper than expect
Why I Stopped Loading Entire Files Into Memory (And How It Saved My Web App)
When you build client-side tools, user privacy isn't just a feature. It's a strict architectural requirement.No backend. No uploads. No server.But nobody warns you about the hidden cost of running everything in the browser: Memory Limits.I learned this the hard way while building ToolFlic, a suite of 100+ browser-based utilities. When users started processing large PDFs and high-resolution images, the browser tabs started crashing. Here is the story of why it happened, and how I fixed it. T
Checkout custom_data arrived empty and the card was still charged
When a signed-in user starts checkout, the backend opens a Lemon Squeezy checkout and sets custom_data.user_id to that account. The subscription_created webhook is what attaches the paid plan. The handler reads custom_data.user_id to know which account.A subscription_created webhook arrived without user_id. The checkout had started from an authenticated session, so the field should have been there. It was not. One missing field on one event. That does not mean the provider always drops custom_da
Do You Actually Need a Headless CMS for Your Blog?
Skip a headless CMS if you write the posts yourself: use Markdown. If someone else writes them, they need an editor, and a headless CMS still leaves you building the blog. That's what DropInBlog is for.Ask how to add a blog to an Astro or Next.js site, and you get a list. Sanity, Payload, Strapi, Contentful, Directus. Pick one, wire up the API, build some templates, and ship it.Quick disclosure: I founded DropInBlog and have been building blog software since 2015. I also use it on my own Astro s
Why I Built a 100% Ad-Free, 3-Second Daily Expense Tracker PWA (React + Firebase + GitHub Actions) published: true
Most "free" expense trackers are bloated with loan ads and slow forms. Here is how I built a lightweight, ad-free PWA with automated 11:00 PM IST email audits.tags: webdev, react, firebase, showdev cover_image: Most "free" expense tracking apps on the Play Store and App Store share the same problem: bloat and ad spam. You open the app just to log a ₹20 cup of chai or a ₹150 auto ride, and you are hit with full-screen personal loan banners, credit card pop-ups, and multi-step forms. After th
What Changes With the A2UI 1.0 Release
This article walks through what changed between A2UI 0.9 and A2UI 1.0, how generated UI works on 1.0, and why it is better, using one currency agent built on both versions. A Google ADK agent on Gemini looks up exchange rates and answers with A2UI cards and charts, rendered by a Next.js CopilotKit front end over AG-UI.https://github.com/xbill9/currency-claude-agui-a2ui1On 0.9 the model wrote the UI as JSON, figures included. On 1.0 it writes one line and the server does the rest. A rate card for
Viral Vue Promo Code ⦇BOOST10⦈: Flat 10% Off — Renewals and cancellation: The Account Feature and Billing Record
Apply Viral Vue promo code ⦇BOOST10⦈ for flat 10% off when you subscribe.** Compare the selected paid tier and interval, then confirm the accepted saving before completing payment.Affiliate disclosure: I may earn a commission if you subscribe using my referral link or code.Viral Vue promo code ⦇BOOST10⦈ · Flat 10% offChoose the tier and billing interval that fit your work. Check the 10% reduction on the payment summary.Visit the Viral Vue signup page What should you check about Viral Vue re
Why I Built 14 Privacy-First Browser Tools Using WebAssembly & WebGPU (No Uploads, Free Forever)
Most online utility websites work the same way: you upload a confidential PDF, photo, or audio file to a random server, wait in a queue, dodge popups, and hit a paywall when you try to download the result.I got tired of that pattern and built DodoDeck — a suite of 14 everyday tools that execute 100% locally inside your browser using WebAssembly and WebGPU. When you close the tab, your data is gone. Zero server uploads. What Runs Locally in Your Browser:Free Online PDF Editor — Edit text dir
Building a Concurrency-Safe WhatsApp & Google Sheets Pipeline with Real-Time Error Alerts
When teachers across 50+ batches finish classes at the top of the hour, dozens of attendance messages hit your webhook simultaneously. If your backend is Google Apps Script writing to Google Sheets, simultaneous writes without concurrency locks will produce race conditions and lost data. The Fix: LockService Mutexfunction doPost(e) { var lock = LockService.getScriptLock(); if (!lock.tryLock(10000)) { return ContentService.createTextOutput('Server busy, request locked'); } try { va
Building a JSON Formatter That Never Sees Your Data
Paste an API response into most formatters and it travels to a server first. Mine formats it in your browser — here is the 20 lines of JavaScript that do it.Every developer has done it: copy a minified API response, paste it into an online JSON formatter, and read the result. It works in seconds. But stop and think about what just happened — your payload travelled to a server you do not control, got processed there, and came back. If that payload held an API key, a user record, or a production c
6 free Next.js website templates with full source (résumé, shop, accountant, beauty store)
We build cinematic Next.js websites for a living, and we have just made six of them free. Each one is the full source, not a stripped "lite" copy: the same zip a paying buyer gets, with a README and step-by-step documentation. One licence covers personal and commercial use, so you can build client sites with them too. You can't resell the files as a template.Before we released them, a script set each zip up the way a buyer would: a clean folder, npm ci, a type check, a production build and a dev
The element you cannot find is inside a blob iframe, and querySelector will never see it
Three hours of a recent debugging session went into a single wrong assumption: that the editor I was automating lived in the same document as the page I had loaded.document.querySelectorAll('[contenteditable]') returned an empty array. Not a stale reference, not a shadow root, not a timing problem. An empty array, on a page that visibly had a rich text editor in the middle of it. The editor was in a blob iframeModern block editors isolate their content styles inside an <iframe> whose
Google Ads showed a 192% conversion rate. Here is the GA4 tracking bug behind it, and a script that catches it
Last month I opened a Google Ads account and saw something that should be impossible: one Search campaign reporting a 192.63% conversion rate. Almost two conversions for every click.It was not a great month. It was a tracking bug, and Smart Bidding had been learning from it.This post walks through what caused it, how to find it in your own account with a short Google Ads script, and how to fix the GTM side so it does not come back. The account is a real one we manage: an Australian identity serv