svelte / / 2 min read

Radish Components: 70 Svelte 5 Components on DaisyUI

We just published @abeedoo/radish-components — a Svelte 5 component library built on DaisyUI v5 and Tailwind CSS v4. 70+ components, zero custom CSS, all utility classes. Playground · npm · GitHub Why We build a lot of admin panels and internal tools with SvelteKit. Every project needs the same things — data tables,

javascript / / 1 min read

dendriteJS v2: Mind Maps in Canvas and SVG

Back in 2012 I built a little interactive mind map tool using Processing.js. It drew bezier curves between draggable nodes, you could add children by clicking a plus button, and the whole thing ran in a canvas. Processing.js died, the code rotted, and I forgot about it. I

math / / 4 min read

Gödel's Junk Drawer

I have a problem with organization. Not a lack of it — an excess. At some point I discovered clear plastic shoe boxes from The Container Store. They stack, they're uniform, they're transparent so you can see what's in them. I started putting things in

svelte / / 2 min read

Announcing bigdesign-svelte

We just published @abeedoo/bigdesign-svelte — a Svelte 5 port of BigCommerce's BigDesign component library. 52 components, zero dependencies, MIT licensed. Playground: bigdesign-svelte.abeedoo.com npm: @abeedoo/bigdesign-svelte GitHub: abeedoolabs/bigdesign-svelte Why If you're building a BigCommerce app with Svelte, you need your UI to match the

javascript / / 2 min read

Your Singletons Are Multiplying

If you're building a full-stack app with Vite and you have any server-side singletons — schedulers, database connections, telemetry adapters, bootstrap flags — you probably have a bug you haven't noticed yet. The Symptom Our dev server kept crashing with out-of-memory errors. Not immediately — it would run fine

svelte / / 1 min read

The $effect Trap

If you're building anything real-time in Svelte 5 — SSE, WebSockets, polling — you will probably hit this. The Setup You have a reactive state object and an $effect that sets up a listener. The listener pushes new data into the state: let data = $state({ messages: [] }); $effect(() => { const source

math / / 3 min read

The Fence Problem, Generalized

If you took calculus, you probably remember this problem: You have 100 feet of fence. Build a rectangle. Maximize the area. It's a classic optimization exercise. But I noticed something about the answer that my textbook never pointed out — something that holds not just for rectangles, but for

fiction / / 10 min read

What is a quine?

q=chr(34)*3 s='q=chr(34)*3\ns={2!r}\na="""{0}"""\nb="""{1}"""\nprint(s.format(a,b,s))' a=""" A quine is... I just woke up from a nightmare.

algorithms / / 4 min read

Fractional Nested Sets: Solving a 30-Year-Old Tree Problem with Floats

The Problem with Nested Sets If you've ever stored a tree in a relational database, you've probably encountered the Modified Preorder Tree Traversal (MPTT) pattern — also known as nested sets. It's Joe Celko's classic: every node gets a lft and rgt integer,