Hacker News

Subscribe to Hacker News feed
Hacker News RSS
Updated: 13 min 45 sec ago

Show HN: Melogen – Generate MIDI melodies for free

Tue, 05/19/2026 - 3:00pm

Melogen generates short melodic phrases as .mid files, no rendered audio, just notes you drop into your DAW. Free to try, no signup required.

I built this because every "AI music" tool I'd tried produces finished audio, which is the opposite of what I want when I'm stuck on a hook. I wanted something that hands me a MIDI seed I can take into Ableton/FL/Logic and shape myself.

Under the hood: - Decoder-only transformer trained on MIDI - Outputs note sequences with timing and velocity - Tuned for short, usable phrases rather than full arrangements

It's still in beta and rough in places. I'd value blunt feedback on: - Whether the generations are actually musical, or just "notes that fit a key" - MIDI handling: timing, velocity, channel assignment - What's missing before it would slot into a real workflow

Happy to get into the model, dataset, or pipeline in the comments.

Comments URL: https://news.ycombinator.com/item?id=48197775

Points: 1

# Comments: 0

Categories: Hacker News

Show HN: FastBack end – schema-first back end runtime with OpenAPI output

Tue, 05/19/2026 - 3:00pm

Hi HN - author here. FastBackend reads a SQLAlchemy or Prisma schema, compiles it to a framework-agnostic IR, and a runtime adapter serves CRUD + relationships as REST with OpenAPI on the side. Try it in ~2 min: npm i -g @fastbackend/cli git clone https://github.com/darula-hpp/fastbackend cd fastbackend/examples/sqlalchemy-fastapi pip install -r requirements.txt fastbackend generate && fastbackend dev open http://localhost:8301/docs What's shipped: - CLI + core on npm (@fastbackend/cli 0.1.2) - FastAPI adapter on PyPI (fastbackend-fastapi) - Express + Prisma adapter on npm - Custom routes and overrides for non-CRUD logic Honest limits: - FastAPI adapter uses in-memory storage (MVP) - Express + Prisma is more production-shaped - No hosted platform — self-hosted codegen/runtime The IR is the interesting part: same schema could be served by different backend adapters. OpenAPI is the frontend handoff (Orval, openapi-typescript, etc.). Roadmap (not shipped): declarative wiring for storage/OAuth with secrets in .env. Happy to answer architecture questions or comparisons to Supabase, PostgREST, FastAPI-CRUD, etc.

Comments URL: https://news.ycombinator.com/item?id=48197768

Points: 1

# Comments: 0

Categories: Hacker News

Which campaigns actually drive your leads?

Tue, 05/19/2026 - 2:54pm

Article URL: https://www.digitalpilot.app/

Comments URL: https://news.ycombinator.com/item?id=48197673

Points: 1

# Comments: 0

Categories: Hacker News

Show HN: Coding agent where a second agent QAs every PR in a real browser

Tue, 05/19/2026 - 2:54pm

Hi HN. I've been building this for the last few months and it's at a state where outside eyes would help more than another week of solo iteration.

It's a kanban board where each ticket runs two agents back to back:

Build agent: runs in a sandboxed temp dir against a shallow clone of the user's repo, makes the change, pushes a branch, opens a PR. Uses the Claude Agent SDK.

QA agent: waits for the preview deploy to come up, then drives a real browser via Browserbase against the preview and verifies the change works against the ticket's acceptance criteria. Screenshots and an mp4 of the QA session get attached to the PR.

If QA fails, the build agent reruns with the QA report as context, up to 3 iterations. Before each retry, a classifier reads the failure and decides whether it was a real code bug or environmental (Clerk didn't load, preview never deployed, Browserbase session got 403'd, etc). Environmental failures break the loop instead of iterating on infra noise. This was the single biggest reliability win.

The other side is input. The platform exposes an MCP server, so from Claude Code or any MCP client you can say "make a ticket for X" and it lands in the backlog. The original reason I built any of this was that writing tickets was the bottleneck for me, not writing code.

A few implementation notes that might be interesting:

The build agent's system prompt forbids the Task / Agent (subagent) tool. Spawning subagents inside the SDK was hanging for 4+ minutes consistently. Staying in the main session with Read/Edit/Bash/Glob/Grep is dramatically more reliable.

Postgres schema is applied on startup from a single schema.sql, idempotent with IF NOT EXISTS everywhere. No migrations directory. Adding a column is "edit schema.sql, push, restart." This is the highest-leverage decision I've made on the backend.

QA has a fast mode (local Chromium for anonymous routes) and a deep mode (Browserbase + residential proxies + stealth, for anything behind auth). The mode is per-ticket because cheap-and-fast loses signal once you go past the login wall.

A background sweeper force-fails any job running over 60 min. The SDK can hang in ways asyncio.wait_for doesn't always clean up through the subprocess boundary, so the kill switch is a belt-and-suspenders guard.

Stack: FastAPI on Railway, Postgres, Claude Agent SDK, Browserbase, Vercel for previews, Clerk for auth, Resend for transactional email, MCP over HTTP. Frontend is one HTML file on Vercel, no build step, no framework, just vanilla JS and Clerk loaded from CDN.

What's not working well yet: deep-mode QA still occasionally gets stuck on CAPTCHAs in unfamiliar OAuth flows. The classifier's environmental-failure list is hand-curated keywords, which is fragile. Spend tracking is per-job but I haven't built per-workspace budget caps yet. PR previews on Vercel sometimes take 2-3 min to come up which the QA agent has to wait through.

It's in alpha with a waitlist. Free during alpha, paid plans later. The whole platform was built using Claude Code, so this has been dogfooding itself for the entire build.

Site: https://notesasm.com

Would love feedback, especially on: the dual-agent loop design, the classifier approach, what kinds of tickets would actually break this on your repo, and prior art I should be aware of (I know about Devin, OpenHands, SWE-agent; what else?).

Comments URL: https://news.ycombinator.com/item?id=48197661

Points: 1

# Comments: 0

Categories: Hacker News

Ask HN: Why invoice matching still pain in the ass in 2026?

Tue, 05/19/2026 - 2:19pm

Comments URL: https://news.ycombinator.com/item?id=48197149

Points: 1

# Comments: 0

Categories: Hacker News

Show HN: I reviewed 271 event tech tools and turned the data into a visual story

Tue, 05/19/2026 - 2:19pm

I run YourEventKit, an independent directory of event technology tools.

Over the past few months I collected and enriched 271 tool profiles with structured data, and once that was done, I wanted to do something fun with it.

So event tech wrapped is the result of my fun curiosity while playing with the dataset. Its a scoll-driven data story where one SVG constellation of 271 dots morph through 10 different states as you scroll.

Each dot is a tool. Each state is a different lens shining upon the dataset.

Built with Astro and D3. The 10 layouts are precomputed with D3 force simulations at build time, stored as JSON. Scroll position interpolates between states via requestAnimationFrame -- no runtime simulation.

Some findings that surprised me:

Only 54% of tools publish a real starting price. The rest require a sales call. 150 out of 271 tools say they are not built for small or one-off events.

Some of you might be able to see the influence of Shirley wu, Emil Kowalski and FiveThirtyEight

All observations and questions are welcome. The experience is enjoyed over desktop as I could not figure out a good experience for mobile yet.

Comments URL: https://news.ycombinator.com/item?id=48197138

Points: 1

# Comments: 0

Categories: Hacker News

Antigravity 2.0

Tue, 05/19/2026 - 2:17pm
Categories: Hacker News

Show HN: Bench-Bets – A World Cup Prediction App Built with Nuxt and SQLite

Tue, 05/19/2026 - 2:10pm

I’m sharing the 3rd version of a side project I’ve been building for every major tournament since 2022. It’s called Bench-Bets, and it’s a simple way to run prediction leagues for the 2026 World Cup with friends.

During Euro 2024, the app reached 7,000 users. I was running it on Fly.io and, despite the great DX, I realized I hadn't spent enough time on my caching strategy. I ended up hitting over 100GB of outbound traffic in a month for what is essentially a text-heavy app. For v3, I’ve spent my time rethinking the data-fetching architecture and ensuring I'm not "re-downloading the world" on every match update.

The tech-stack:

- nuxt v4 & tailwind

- sqlite + drizzle ORM. I’m a huge advocate for SQLite in production for these types of hobby apps—it’s fast, simple, and the performance for thousands of concurrent users has been surprisingly solid

- auth: Better Auth

The rules: It’s the standard "guess the score" format, but I’ve added a twist where points double starting from the Round of 16 to keep the leaderboard competitive until the very end.

I built this because I wanted an ad-free, tracker-free alternative to the cluttered betting apps out there. It’s just me and a few friends playing, but it’s been a fun way to learn about modern web architecture and the "surprises" that come with even modest scale.

Comments URL: https://news.ycombinator.com/item?id=48196996

Points: 1

# Comments: 0

Categories: Hacker News

There Shall Be Cathedrals

Tue, 05/19/2026 - 2:09pm
Categories: Hacker News

Pages