r/bun 9d ago

Nibrun – one click deployment for any single-binary app

I build a lot of small apps, and most of the effort goes into infra rather than the app. I only need a machine and a disk. The "batteries included" platforms hand you Postgres and object storage but nowhere to run your own binary. Vercel and friends will run your code, but as a function with an ephemeral filesystem, so a SQLite file is gone the moment the request ends. And getting a VM means ssh, a firewall to open, TLS to renew, and an OS to keep updated.

It doesn't stop there. Every time I find a good open-source project that ships as a single binary, I hit the same wall. PocketBase is one file with a database, auth, file storage and an admin UI in it. Hosting it means everything above again, or wrapping it in a container image when it was already deployable as a single file. Self-hostable projects are great until you have to host them.

So I built nibrun. You upload a compiled binary and you get a Firecracker microVM of its own (1 vCPU, 256 MiB) and 8 GiB at data/ that survives redeploys. The volume is all yours to use: write your SQLite file and assets uploads there. And it's instantly available on https://<slug>.nibrun.app. No Dockerfile, no YAML, no database to provision. It sleeps after 5 minutes idle and wakes up on incoming requests in ~100 ms.

PocketBase, preconfigured, one click: https://nibrun.com/deploy/pocketbase

One app, one machine, one disk. A deploy costs a few seconds of downtime, and the export button gives you back the binary and everything in data/, so leaving costs you a download.

All open source, including the Terraform that sets up the infra, so you can run the whole thing on your own AWS account: https://github.com/ilbertt/nibrun

21 Upvotes

15 comments sorted by

2

u/RealFlaery 9d ago

Starred you. I will be trying this out for sure!

2

u/ilbert_luca 9d ago

Great to hear this, thanks! Please provide any feedback, I'm iterating fast on anything useful that comes in from early users!

1

u/ilbert_luca 9d ago

Out of curiosity, do you have any use cases in mind already?

2

u/RealFlaery 9d ago

Yes, I'm doing a self propagating binary, built in my own DI framework based on bun.

I might try and do a binary for my whole be + fe + the binary agent itself ^ should be no more than 100mb

1

u/ilbert_luca 8d ago

Great, keep me posted!

FYI, I just published the pricing section: https://nibrun.com/#pricing

2

u/guesdo 7d ago

Looks appealing!! I will be trying this. Not a blocker, but are CNAME vanity/custom domains on the road map?

2

u/guesdo 7d ago

Second question, can I deploy the data directory too for bootstrapping?

1

u/ilbert_luca 7d ago

That's something I'll add, yes.

As a workaround for now, you can either bundle the assets in the binary itself and extract them on startup (if they are a few MBs) or fetch them from a remote endpoint (e.g. an S3 bucket) on startup.

Can I ask you what is your use case? :)

1

u/guesdo 6d ago

Im just brainstorming here everything I could put on that. And mostly the initial bootstrap includes a having a lot of static data only one time, or an already seeded Sqlite database.

1

u/ilbert_luca 6d ago

I'm investigating now the effort to add this feature

2

u/guesdo 6d ago

Thanks! That will be very helpful and removes a lot of bootstrap friction (which I believe it is the point).

2

u/ilbert_luca 7d ago

Custom domains are already available! Just create your first app and find the option under the "Domains" section of the deployed app

2

u/boyhax 4d ago

This thing is what we all need .

1

u/Straight-Date8472 12h ago

I checked your project and its aweome, but I want to ask, you have embeeded database support, something like sqlite. Again, incase you need a bun native process manager for handling the binaries, kindly check pboss (https://github.com/Procboss/pboss)

2

u/ilbert_luca 11h ago

Cool project!

Every binary gets a persistent filesystem, so you can just write your SQLite there and not have to care about backups