• OPENDEV HUB V1.0• API STATUS: 100% OPERATIONAL• CLIENT ENGINE: LOADED & CACHED• TRENDING TECH: TAILWIND V4, NEXT.JS 16, RUST, GO• ZERO AUTH REQUIRED
OPENDEVHUB

Command Palette

Search for a command to run...

DEVELOPER RELEASES

DEVELOPER NEWS STREAM

Direct logs, engine updates, and framework notifications parsed from curated RSS feeds and announcements, updated hourly.

A stale "checking..." restored from disk is a lie, so one of our six stores has no file
architecture2026-10-03
Daniel PertuDaniel Pertu

A stale "checking..." restored from disk is a lie, so one of our six stores has no file

Notifio is a desktop app that polls rental search pages on your machine and alerts you when a listing...

€9,99 per month is a paywall, €1,450 per month is the rent, and two digits is the whole difference
automation2026-10-03
Daniel PertuDaniel Pertu

€9,99 per month is a paywall, €1,450 per month is the rent, and two digits is the whole difference

Notifio watches rental search pages and, if you have bought the upgrade for it, fills in the contact...

🕷️ I Built a Spider-Themed World Clock with Next.js
nextjs2026-10-03
Md.Tawhed Islam TaieabMd.Tawhed Islam Taieab

🕷️ I Built a Spider-Themed World Clock with Next.js

🕷️ I Built a Spider-Themed World Clock with Next.js Hey DEV community! 👋 I’m Tawhed...

We deleted the list of retailers from our label parser, because a list only ever saves the first sighting
typescript2026-10-03
Daniel PertuDaniel Pertu

We deleted the list of retailers from our label parser, because a list only ever saves the first sighting

A brand name printed in an ingredients list is not an ingredient. The fix was not a hardcoded list of brands, it was learning each one permanently the first time it appears.

Our uncertainty is a field on the rule set, not a sentence in the copy deck
typescript2026-10-03
Daniel PertuDaniel Pertu

Our uncertainty is a field on the rule set, not a sentence in the copy deck

Every condition rule set in Munchable carries its own evidence caveat, version and sources, and the public pages print them. One of them says there is no evidence base.

An LLM agent that qualifies B2B leads from AmoCRM: notes from a production build
ai2026-10-03
buildbyalexbuildbyalex

An LLM agent that qualifies B2B leads from AmoCRM: notes from a production build

A B2B client came to us with 50 to 80 inbound leads a day and one first-touch sales manager. About...

Chrome records WebM with no duration in the header, and five HEAD requests decide whether you get charged
javascript2026-10-03
Daniel PertuDaniel Pertu

Chrome records WebM with no duration in the header, and five HEAD requests decide whether you get charged

The browser half of a video pipeline: a MIME type baked into a presigned URL, a container missing its own length, a ref that exists because of closure staleness, and a seven-step submit that charges exactly once.

Our affiliate payout command cannot send money, and that is the feature
postgres2026-10-03
Daniel PertuDaniel Pertu

Our affiliate payout command cannot send money, and that is the feature

A commissions ledger in Postgres where the transfer happens out of band. A 30-day hold, a row lock, integer pence, and one deliberate refusal to copy Stripe's currency field.

Our background job deletes its own input, and moving that delete one step earlier broke every retry
webdev2026-10-03
Daniel PertuDaniel Pertu

Our background job deletes its own input, and moving that delete one step earlier broke every retry

A Trigger.dev task that must leave nothing behind, retry three times, and refund exactly once. The ordering of seven steps is the whole design.

Keeping multiplayer board game rules honest: pure reducers on the server
typescript2026-10-03
Ahmed MoazAhmed Moaz

Keeping multiplayer board game rules honest: pure reducers on the server

In a multiplayer board game, the dangerous bug is not a crash. It's two players seeing different...

How I built German tax calculators where every number shows its law paragraph (Astro + TypeScript + 68 tests)
webdev2026-10-03
hongtao fanghongtao fang

How I built German tax calculators where every number shows its law paragraph (Astro + TypeScript + 68 tests)

When my wife and I planned for a baby, I tried to figure out her Elterngeld (German parental...

Type-Safe AI Decisions in TypeScript: How to Consume Jev Without Crashing in Production
javascript2026-10-03
Programming CentralProgramming Central

Type-Safe AI Decisions in TypeScript: How to Consume Jev Without Crashing in Production

The flagship model of modern deterministic-probabilistic decision engines does not write you a...

Our own rate limiter answered "valid: false", and the licence check believed it
api2026-10-03
Daniel PertuDaniel Pertu

Our own rate limiter answered "valid: false", and the licence check believed it

Notifio is sold as a one time licence, with one optional one time upgrade on top of it: the part that...

I Wanted Rounded Text Selection for Years. Here's How I Finally Built It in Angular (With AI Help)
angular2026-10-03
GregorGregor

I Wanted Rounded Text Selection for Years. Here's How I Finally Built It in Angular (With AI Help)

There is one incredibly small visual detail I've wanted to implement on my websites for...

Two conditions, one product, and the rule we deliberately apply to only one of them
typescript2026-10-03
Daniel PertuDaniel Pertu

Two conditions, one product, and the rule we deliberately apply to only one of them

How Munchable reconciles several gut conditions into one verdict without averaging them, and why a disagreement between them is rendered rather than resolved.

A label that prints "nuts" is evidence. The same word inferred from "almond" is not.
typescript2026-10-03
Daniel PertuDaniel Pertu

A label that prints "nuts" is evidence. The same word inferred from "almond" is not.

Why Munchable's allergy check separates a word the pack printed from a word its ingredient taxonomy inferred, and why there is no level for "absent".