frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: WebAudio Data-Driven audio engine

https://github.com/mikezaby/blibliki
2•mikezaby•10h ago
A couple years back, I found myself in my thirties with programming as my only real interest, and I felt this urge to reconnect with something else.

I used to play drums in high school bands, so I decided to get back into music, this time focusing on electronic music and keyboards.

One day, somehow I came across WebAudio and as a web developer, this clicked (not the transport one) to me. I was excited about the idea of working on a project with web and music at the same time. As a web developer who was heavily using REST APIs and state management tools, I started thinking of an audio engine that could be handled through data.

So Blibliki is a data-driven WebAudio engine for building modular synthesizers and music applications. Think of it like having audio modules (oscillators, filters, envelopes) that you can connect together, but instead of directly manipulating the modules, you just provide data changes. This makes it work really well with state management libraries and lets you save/load patches easily. Also, one other reason for this design is that you can separate the user interface from the underlying engine.

The project has grown into a few parts:

* Engine: The core WebAudio synthesis engine

* Grid: A visual interface where you drag/drop and connect modules

* Transport: Musical timing and scheduling system

I had a first implementation of Blibliki on top of ToneJS, but I started writing directly in WebAudio because I wanted to re-think my original idea, document and explain it to others. So, I documented the early steps in development process in a 4-part blog series about building it from scratch. Then I decided to abort the ToneJS project and continue with a complete re-implementation in WebAudio. In this way I learned many things about audio programming and synthesizers, because I lost many ready-to-use tools of ToneJS.

I'm not pretending this is the next VCV Rack or anything! It's got plenty of missing features and bugs, and I've mostly tested it on Chrome. But it works, it's fun to play with, and I think the data-driven approach is pretty neat for certain use cases. Currently, I'm in active development and I hope to continue this way or even better.

You can check it out:

Blibliki monorepo: https://github.com/mikezaby/blibliki

Grid playground: https://blibliki.com

Blog series: https://mikezaby.com/posts/web-audio-engine-part1

Comments

pasxizeis•9h ago
Amazing work!

Where would you suggest someone to start if they wanted to get familiar with the codebase?

Also, what are the next steps for the project?

Show HN: MyTimers.app offline-first PWA with no build step and zero dependencies

https://mytimers.app/
11•y3k•2h ago•6 comments

Show HN: a Rust ray tracer that runs on any GPU – even in the browser

https://github.com/tchauffi/rust-rasterizer
89•tchauffi•17h ago•25 comments

Show HN: Tamagotchi P1 for FPGAs

https://github.com/agg23/fpga-tamagotchi
55•agg23•6d ago•6 comments

Show HN: Chess960v2 – Stockfish tournament with different starting positions

https://chess960v2.com/en
2•lavren1974•3h ago•1 comments

Show HN: FinBodhi – Local-first, double-entry app/PWA for your financial journey

https://finbodhi.com/
31•ciju•16h ago•18 comments

Show HN: Centia.io – Open PostgreSQL/PostGIS back end for developers

https://centia.io/
23•mhoegh•1w ago•4 comments

Show HN: Serie – A rich Git commit graph in your terminal

https://github.com/lusingander/serie
14•lusingander•22h ago•1 comments

Show HN: An AI to match your voice to songs and artists you should sing

https://coach.singonesong.com
34•JacobSingh•13h ago•2 comments

Show HN: Secret Management for Local Development

https://github.com/athishrao/crux-vault
3•athish-rao•9h ago•0 comments

Show HN: Strange Attractors

https://blog.shashanktomar.com/posts/strange-attractors
786•shashanktomar•3d ago•75 comments

Show HN: WebAudio Data-Driven audio engine

https://github.com/mikezaby/blibliki
2•mikezaby•10h ago•1 comments

Show HN: Anki-LLM – Bulk process and generate Anki flashcards with LLMs

https://github.com/raine/anki-llm
55•rane•1d ago•22 comments

Show HN: AgentML – SCXML for Deterministic AI Agents (MIT)

https://github.com/agentflare-ai/agentml
4•jeffreyajewett•10h ago•1 comments

Show HN: React-like Declarative DSL for building synthetic LLM datasets

https://github.com/qforge-dev/torque
10•arturwala•11h ago•0 comments

Show HN: Why write code if the LLM can just do the thing? (web app experiment)

https://github.com/samrolken/nokode
430•samrolken•2d ago•316 comments

Show HN: Extrai – An open-source tool to fight LLM randomness in data extraction

https://github.com/Telsho/Extrai
4•elias_t•12h ago•0 comments

Show HN: Pipelex – Declarative language for repeatable AI workflows

https://github.com/Pipelex/pipelex
120•lchoquel•6d ago•27 comments

Show HN: Weak Incentives – lean, minimalistic toolkit for background agents

https://github.com/weakincentives/weakincentives
2•andreisavu•14h ago•1 comments

Show HN: JotChain – Get more out of your daily work notes

https://jotchain.com
3•morozred•14h ago•3 comments

Show HN: Complete Claude Code Resource with 3-Minute Setup

https://github.com/jmckinley/claude-code-resources
3•johnmckinley•15h ago•1 comments

Show HN: In a single HTML file, an app to encourage my children to invest

https://roberdam.com/en/dinversiones.html
247•roberdam•4d ago•434 comments

Show HN: A pragmatic SQLite schema for application-level caching

https://gist.github.com/ewaldbenes/e48b9b4c1d0e1cb7175dfdd868addd58
2•ebenes•16h ago•0 comments

Show HN: Pianolyze – Learn any piano song using AI/ML, right in the browser

https://pianolyze.com/
4•nickplee•17h ago•1 comments

Show HN: Pydoll, a type-safe asyncio lib for evading bot detection

https://pydoll.tech/docs/deep-dive/fingerprinting/
3•thalissonvs•17h ago•0 comments

Show HN: Give your coding agents the ability to message each other

https://github.com/Dicklesworthstone/mcp_agent_mail
13•eigenvalue•1d ago•2 comments

Show HN: Quibbler – A critic for your coding agent that learns what you want

https://github.com/fulcrumresearch/quibbler
114•etherio•4d ago•27 comments

Show HN: Learn German with Games

https://www.learngermanwithgames.com/
125•predictand•5d ago•106 comments

Show HN: Duper – The Format That's Super

https://duper.dev.br/
31•epiceric•2d ago•15 comments

Show HN: Safebox: Open-source framework for managing self-hosted apps (Beta)

2•drebora•21h ago•0 comments

Show HN: A simple drag and drop tool to document and label fuse boxes

https://github.com/alexadam/fuse-box-labels
26•eg312•3d ago•6 comments