alt.hn

3/29/2026 at 11:42:31 AM

Show HN: Sheet Ninja – Google Sheets as a CRUD Back End for Vibe Coders

https://sheetninja.io

by sxa001

3/29/2026 at 12:05:35 PM

Don’t really get the purpose for this apart from throw away projects.

For vibe coders is it really “hours” setting up a database these days? GCP cloud sql + drizzle ORM is minutes and actually scales unlike a spreadsheet, heck Claude can even write you a deployment script and run it over GCP CLI.

by robotswantdata

3/29/2026 at 12:06:40 PM

Cloud SQL costs gazillions, sheet is free (other than selling your data)

by misiek08

3/29/2026 at 12:46:33 PM

>sheet is free (other than selling your data)

Except the sheets-to-api SaaS charges $9/month if you want more than 250 requests.

by gruez

3/29/2026 at 12:18:13 PM

Cloud sql lowest tier is pennies a day, this ninja platform is also not free.

A spreadsheet is a misclick away from corruption, why not spend another prompt on getting Claude to configure a db?

by robotswantdata

3/29/2026 at 12:23:15 PM

Which works out at $100 USD / year. You might think that's trivial, but when you start provisioning multiple environments over multiple projects it starts to add up.

It's a shame that Google haven't managed to come up with a scale to zero option or serverless alternative that's compatible.

by kevcampb

3/29/2026 at 12:57:39 PM

Sheet Ninja is 108 USD / year and has tiny capacities for every metric. SQLite is free and would stomp this in every aspect on low budget hosting. Even a tiny API that stores CSV would be magnitudes more efficient.

But what would scare me the most, is that google can easily shut this thing down.

by Yokohiii

3/29/2026 at 12:29:23 PM

It is trivial to set up a database on GCP given that you know what you are doing and I would pay Google for that stability and support for setting up multi-tenancy and region.

Using Google spreadsheets as a backend will just cause them to charge everyone later.

Sheet Ninja isn't free. Even on their side, "free" does not mean what you think it means.

by rvz

3/29/2026 at 12:46:18 PM

setup a DB project , use same cloud sql instance for all DBs. Did that for years on non prod or experimental projects. $100 is a bargain for what you get in terms of resiliency

by robotswantdata

3/29/2026 at 12:43:49 PM

> Cloud sql lowest tier is pennies a day

Unless things have improved it's also hideously slow, like trivial queries on a small table taking tens of milliseconds. Though I guess that if the alternative is google sheets that's not really a concern.

by n_e

3/29/2026 at 1:35:30 PM

You can fire up a burstable postgres for about $20/mo

by bercini

3/29/2026 at 12:16:25 PM

Most are lucky to get a few sign ups.

by codybontecou

3/29/2026 at 7:04:44 PM

> Cloud SQL costs gazillions,

WTF is "Cloud SQL"?

I have a postgresql server running on a $5/m VPS that I add DBs to as and when I explore some new idea.

by lelanthran

3/29/2026 at 3:45:37 PM

SQLite is enough for 98% of all of these use cases, and 100% of the ones this would appeal to

by Zetaphor

3/29/2026 at 6:07:19 PM

Don't do this guy, cloudsql costs a lot.

by faangguyindia

3/30/2026 at 8:07:24 AM

Costs a lot? It’s a bargain for globally resilient infrastructure.

db-f1-micro is about $10pm inc storage for something that just works and can scale, be shifted on prem etc. you can run all your vibe coded slop on one instance.

by robotswantdata

3/29/2026 at 9:05:50 PM

I think it can be useful if you want to use an existing Google Sheet, or if your users want to modify the database directly in Google Sheets, even though it seems pretty risky.

by patate007

3/29/2026 at 12:37:57 PM

I put Google Sheets as a backend (in production) when i wanted a select non technical people to be able to see and modify the data without the cost of building a backend.

I really wish auth was easier to setup for services though, i see no reason google can't provide this out of the box

by Raed667

3/29/2026 at 12:50:14 PM

You can auth with Google auth after you configure an app, what are you thinking of that would be simpler?

by riffraff

3/29/2026 at 1:02:39 PM

I meant to authenticate a service (that is not running on GCP) to access the sheet, it requires a service account and felt more convoluted than what it needs to be

by Raed667

3/29/2026 at 1:12:26 PM

Completely agree. Managing service account JSON keys and configuring IAM roles just to access a single sheet feels like a huge overhead for simple projects.

by afferi300rina

3/29/2026 at 6:39:44 PM

This is a great project, very cool, but it is actually insane to me that CRUD is so apparently hard that Google Sheets is the best solution

by sroerick

3/29/2026 at 6:44:16 PM

What's old is new again: Filemaker Pro

by ugh123

3/29/2026 at 7:24:15 PM

The attractiveness of a spreadsheet comes in the display and the charts, etc.

For a serious database doing actual transactions, I'm not sure about the utility.

by Andrex

3/30/2026 at 1:57:42 AM

Yes, but these things like easy exposure of metrics, having a simple editable back end, these used to be table stakes for this sort of thing

by sroerick

3/29/2026 at 12:29:43 PM

SQLite, SQLite + drizzle with WAL mode, push it to a VPS, do not waste your time on anything else :)

Thank me when things become super easy!

When things scale, SQLite will still be fine, will fit 99% of the vibe coders needs!

When they don't then migrate to what ever!

by pduggishetti

3/29/2026 at 12:36:58 PM

This requires technical skill

by mettamage

3/29/2026 at 1:16:52 PM

If Claude can do it reasonably well then there’s another tier of technical skill that can reach.

by threatofrain

3/30/2026 at 10:11:54 AM

sshhhhh, don't tell everyone they can actually run a website with few hundred K users on 40$ servers.

by pixel_popping

3/29/2026 at 12:38:59 PM

> When things scale, SQLite will still be fine, will fit 99% of the vibe coders needs!

No it won't. SQLite is a poor choice at handling this, period. With all those hacks it still doesn't make any sense over something like PostgresSQL which is designed for that use case.

Yet another reason why I dismiss this nonsense of vibe coding.

by rvz

3/29/2026 at 3:41:35 PM

I accept what you say, my point is for 99% of vibe coded and vibe coders stuff you have no reason to spin up anything more than sqlite, if you grow migrate to postgres, you will have drizzle help you!

A single vps like 1-2 GB ram and 2 CPU can suffice 100s of your projects

SQLite can handle 100s of users easyily

And 99% of vibe coded projects won't grow further than 100s of concurrent users

by pduggishetti

3/29/2026 at 4:22:04 PM

I like this idea, I wrote a tiny CRM-like thing for my mom a month or so ago (upgrade from a google sheet that I had previously upgraded from an Apple Note) and it uses Sheets as it's backend. She can always go back to the Sheet and lose nothing but the web interface she uses it tailored to exactly what she needs. I couldn't be happier with it and she loves it.

I'll have to remember this for my next little one-off tool.

by joshstrange

3/29/2026 at 11:46:16 AM

Hi all - a friend and I have been dabbling in the entrepreneur space for years, but we never really pulled the trigger because of our corporate jobs. We suffer from the same thing that plagues a lot of engineers: we know how to build products, but we are weak at distribution and marketing.

We feel that being able to build is becoming table stakes and the ability to actually get a product into people's hands is more important than ever. We built SheetNinja (https://sheetninja.io) to force ourselves to learn that side of the business from the ground up.

We chose a validated market (sheets-to-api) so we could focus on the "how to find users" problem rather than wondering if the category was useful. It also fits our current "vibe coding" workflow i.e. when we use LLMs or Replit to spin up an idea, a Google Sheet is often the fastest way to handle CRUD without the friction of setting up a traditional database.

We are looking for feedback on the tool itself and the landing page. We have a lot of visitors but a lower sign-up rate atm.

Thanks, in advance!

https://sheetninja.io

by sxa001

3/30/2026 at 7:30:03 PM

the distribution muscle being a separate skill is so underrated. most technical founders assume if you build something good it finds its own audience. it almost never does. sounds like you're learning the hard way which is probably the only way

by IxInfra

3/29/2026 at 2:07:54 PM

The "we chose a validated market so we could focus on learning distribution" framing is really smart and honestly something I wish I'd done earlier. I'm building a workspace/collaboration tool and spent way too long on the product side before realizing the distribution muscle is a completely separate skill that doesn't develop on its own.

One thing I've noticed from the sheets-as-backend pattern: the reason people keep reaching for spreadsheets is because the editing UX is instant and familiar.Any tool that wants to replace this for non-technical users needs to nail that "just click a cell and type" experience. That's the hard part honestly.

by saadn92

3/29/2026 at 12:07:11 PM

Please share the repo for the API and we will happily provide technical feedback.

by tjohnell

3/31/2026 at 5:19:04 AM

Has anyone run into issues with concurrent writes? Like if two users submit a form at the same time, do you get race conditions or does Sheets' API handle locking somehow? I

by rakeshd

3/29/2026 at 5:05:14 PM

Afaik Google Sheets comes with REST API endpoints by default.

How is this different?

Which scenarios do and which DO NOT require Sheet Ninja?

by pezo1919

3/30/2026 at 8:05:06 AM

You can do this with GQuery.

It's really good (no affiliation).

/* Uses: https://github.com/FCPS-TSSC/GQuery */

function exampleQuery1() { const gq = new GQuery(); const result = gq .from("Tags") .select(["ID","Name"]) .where((row) => row.ID == 12) // you can use > or < etc .get(); JSON.stringify(result, null, 2) }

by everythingabili

3/29/2026 at 12:07:08 PM

Really good project for a quick data back end.

One feature suggestion: webhook support for row changes:

If my Sheet updates (say, a new waitlist signup), I'd want to trigger for e.g. a Slack notification. Supabase has something similar with their database webhooks. I use that extensively for kicking off signup workflows.

by rsafaya

3/29/2026 at 12:19:36 PM

You can do this now directly in the Google environment. Should be trivial to vibe code Google Apps Script to hit a Slack endpoint. You'd probably use an 'on edit' trigger to run the code.

by snoopen

3/29/2026 at 12:22:30 PM

That's a great suggestion, thank you

For your signup workflows, how sensitive would you be to latency? Would a 30 to 60 second delay be a dealbreaker, or are you looking for something that hits Slack the instant the row is created?

(The challenge with Google Sheets is we'd have to poll for changes)

by sxa001

3/29/2026 at 4:41:16 PM

I think it can be one option to achieve a tiny goal. Some companies often think that using AWS or GCP is too much of a stretch for a minimum target. So, it can be a good way to meet their request.

by kent8192

3/29/2026 at 11:57:18 AM

This site is pretty broken. The project seems cool but I’d recommend a more static landing page. I bounced very quickly. Didn’t even make it to the bottom with all the distracting animations.

by tyleo

3/29/2026 at 12:13:12 PM

I really like the idea of using Google Sheets for quick prototyping and maybe "vibe coding" without the friction of setting up a traditional DB.

I haven’t noticed a scrolling issues, btw

by odest

3/29/2026 at 11:49:26 AM

Good project but I wish something like this can exist for proton mail, I have made some puppeteer scripts which can hook up to proton docs.

But Proton is really doing some great disservice to not having a public api for their docs.

I can imagine it being used for anonymous comments page for webpages etc.

I am not sure if there is something that you can do about it though given that the fundamental issue of this is caused by proton not having an api whereas I think google docs does have API.

It's more a message to proton if anything.

by Imustaskforhelp

3/29/2026 at 6:16:16 PM

Version-controllable, plaintext knowledge bases have a durability advantage that no SaaS tool can match. Your notes will outlive any company.

by zephyrwhimsy

3/29/2026 at 12:27:53 PM

I have done this for my own projects for years it’s great for projects that are only for me and gives me a very good db editor also. Cool project though the only risk I see is that if the target audience are vibe coders they will you known just vibe code an integration

by curbits

3/29/2026 at 12:56:39 PM

Thank you! The idea of our target audience just vibe coding this themselves definitely gave us pause for thought while we were building it :)

We're thinking of playing around with the pricing right now to make sure it is cheaper to just use this than to spend the time and tokens recreating the logic. We will see how it plays out.

by sxa001

3/29/2026 at 11:52:25 AM

Looks great! I’ve definitely wanted this exact thing before. I will consider reaching for this next time I need to throw together a quick app.

by PullJosh

3/30/2026 at 6:43:36 PM

is an .xls a normal workflow for API creating? I get the documenting the schema is easier, but why not just a IDE with a prompt?

by kylex-ken

3/29/2026 at 12:12:33 PM

Just impossible to read the landing page on mobile due to endless carousel sliding which constantly returns you to the top of the page

by igor_mart

3/29/2026 at 12:16:03 PM

I didn't have any "top of page" navigations that I didn't control going on.

by michaelcampbell

3/29/2026 at 6:00:46 PM

Did this 9 years ago :o, cached it though.

by NicoJuicy

3/29/2026 at 2:09:15 PM

A pay option like this definitely seems worse than the Firebase backend that AI Studio would automatically use.

by xnx

3/29/2026 at 11:46:13 AM

The animations in the page keeps interrupting me and scrolling me up after I scroll past them.

by abdusco

3/29/2026 at 11:49:54 AM

Is this in the 'How it Works' section? I'll get that fixed - thanks for letting me know.

by sxa001

3/29/2026 at 11:57:50 AM

Yes https://youtube.com/shorts/rQdvvGtapL4

by ofcrpls

3/29/2026 at 12:11:58 PM

This is really helpful thanks. I've just pushed a build to disable the scroll-jacking - ETA 5-10 mins!

by sxa001

3/29/2026 at 11:52:34 AM

Oh man fix the site. If I scroll down it auto scrolls up after 2 seconds. And other bugs.

by mememememememo

3/29/2026 at 12:13:29 PM

Sorry about that - I've pushed a fix to stop it from auto-scrolling which should be propagating through soon. Thank you for flagging this

by sxa001

3/29/2026 at 7:23:18 PM

Thanks! No need to be sorry :)

by mememememememo

3/29/2026 at 12:11:25 PM

Do vibe coders need an api for an api? Sounds like something solvable with a skill

by smrtinsert

3/29/2026 at 12:47:44 PM

If this site does not run on top of a google sheet then don't believe it.

by _pdp_

3/29/2026 at 11:03:39 PM

Missed opportunity naming it ensheetify.io

by lanice

3/29/2026 at 12:16:47 PM

Is this meant to replace databases?

by evanbabaallos

3/29/2026 at 6:35:48 PM

You do not need to go through these guys Google provides access to the URL to use the sheet as a database and also allows you to deploy Javascript and even host the site with AppScript (example https://script.google.com/macros/s/AKfycbzYt_aXBdQlnMM7idlVD... )

by mamday1

3/29/2026 at 7:51:57 PM

The +1 button doesn’t work?

by TheTaytay

3/29/2026 at 12:23:49 PM

Awesome!

by 0xbrad

3/29/2026 at 12:21:42 PM

"Ship now, pay later" you're not wrong.

by _joel

3/29/2026 at 6:54:02 PM

Umm, does Google sheets let you fetch rows in O(log(n)) time or aggregate numbers?

by aitchnyu

3/29/2026 at 12:13:54 PM

The world needs less vibe coded slop, not more

by lpcvoid

3/31/2026 at 10:29:15 AM

[dead]

by matevz_smallPMS

3/29/2026 at 11:28:44 PM

[dead]

by pugchat

3/29/2026 at 6:08:56 PM

[dead]

by jeninho

3/29/2026 at 11:56:27 AM

[dead]

by Remi_Etien

3/29/2026 at 7:30:25 PM

[flagged]

by Andrew_McCarron

3/29/2026 at 7:40:24 PM

Thanks and great question - appends are atomic via Google's Sheet API, but updates/deletes are currently positional based on row ID. It's 'last-write-wins' for now if there are multiple concurrent updates.

by sxa001

3/29/2026 at 12:00:11 PM

[dead]

by jeffinmanuel