Show HN: Sheet Ninja – Google Sheets as a CRUD Back End for Vibe Coders
57 points
7 hours ago
| 31 comments
| sheetninja.io
| HN
Andrew_McCarron
11 minutes ago
[-]
Nice execution on the Google Sheets as backend angle — it's a much lower friction onboarding story than "set up a database." How are you handling concurrent writes when multiple users edit the sheet at the same time?
reply
sxa001
1 minute ago
[-]
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.
reply
sroerick
1 hour ago
[-]
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
reply
Andrex
18 minutes ago
[-]
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.

reply
ugh123
58 minutes ago
[-]
What's old is new again: Filemaker Pro
reply
Raed667
7 hours ago
[-]
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

reply
riffraff
6 hours ago
[-]
You can auth with Google auth after you configure an app, what are you thinking of that would be simpler?
reply
Raed667
6 hours ago
[-]
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
reply
afferi300rina
6 hours ago
[-]
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.
reply
robotswantdata
7 hours ago
[-]
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.

reply
faangguyindia
1 hour ago
[-]
Don't do this guy, cloudsql costs a lot.
reply
misiek08
7 hours ago
[-]
Cloud SQL costs gazillions, sheet is free (other than selling your data)
reply
gruez
6 hours ago
[-]
>sheet is free (other than selling your data)

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

reply
robotswantdata
7 hours ago
[-]
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?

reply
kevcampb
7 hours ago
[-]
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.

reply
Yokohiii
6 hours ago
[-]
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.

reply
robotswantdata
6 hours ago
[-]
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
reply
rvz
7 hours ago
[-]
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.

reply
n_e
6 hours ago
[-]
> 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.

reply
lelanthran
37 minutes ago
[-]
> 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.

reply
codybontecou
7 hours ago
[-]
Most are lucky to get a few sign ups.
reply
bercini
6 hours ago
[-]
You can fire up a burstable postgres for about $20/mo
reply
Zetaphor
3 hours ago
[-]
SQLite is enough for 98% of all of these use cases, and 100% of the ones this would appeal to
reply
zephyrwhimsy
1 hour ago
[-]
Version-controllable, plaintext knowledge bases have a durability advantage that no SaaS tool can match. Your notes will outlive any company.
reply
joshstrange
3 hours ago
[-]
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.

reply
pezo1919
2 hours ago
[-]
Afaik Google Sheets comes with REST API endpoints by default.

How is this different?

Which scenarios do and which DO NOT require Sheet Ninja?

reply
pduggishetti
7 hours ago
[-]
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!

reply
mettamage
7 hours ago
[-]
This requires technical skill
reply
threatofrain
6 hours ago
[-]
If Claude can do it reasonably well then there’s another tier of technical skill that can reach.
reply
rvz
7 hours ago
[-]
> 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.

reply
pduggishetti
4 hours ago
[-]
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

reply
sxa001
7 hours ago
[-]
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

reply
saadn92
5 hours ago
[-]
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.

reply
tjohnell
7 hours ago
[-]
Please share the repo for the API and we will happily provide technical feedback.
reply
snoopen
7 hours ago
[-]
I'm not sure I see why this needs to be a paid service. Unless I understand incorrectly, you can get the same result for free, self contained, with freely available code like this: https://gist.github.com/richardblondet/ce87a397ef669d4d25dd2...
reply
rsafaya
7 hours ago
[-]
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.

reply
snoopen
7 hours ago
[-]
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.
reply
sxa001
7 hours ago
[-]
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)

reply
kent8192
3 hours ago
[-]
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.
reply
tyleo
7 hours ago
[-]
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.
reply
odest
7 hours ago
[-]
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

reply
curbits
7 hours ago
[-]
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
reply
sxa001
6 hours ago
[-]
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.

reply
NicoJuicy
1 hour ago
[-]
Did this 9 years ago :o, cached it though.
reply
Leftium
4 hours ago
[-]
I made a similar project: https://veneer.leftium.com

You can publish any publicly readable sheet/form (append rows with publicly available form):

- sample sheet: https://veneer.leftium.com/s.1RoVLit_cAJPZBeFYzSwHc7vADV_fYL...

- sample form: https://veneer.leftium.com/g.chwbD7sLmAoLe65Z8

reply
xnx
5 hours ago
[-]
A pay option like this definitely seems worse than the Firebase backend that AI Studio would automatically use.
reply
mamday1
1 hour ago
[-]
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... )
reply
igor_mart
7 hours ago
[-]
Just impossible to read the landing page on mobile due to endless carousel sliding which constantly returns you to the top of the page
reply
michaelcampbell
7 hours ago
[-]
I didn't have any "top of page" navigations that I didn't control going on.
reply
PullJosh
7 hours ago
[-]
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.
reply
aitchnyu
48 minutes ago
[-]
Umm, does Google sheets let you fetch rows in O(log(n)) time or aggregate numbers?
reply
_pdp_
6 hours ago
[-]
If this site does not run on top of a google sheet then don't believe it.
reply
abdusco
7 hours ago
[-]
The animations in the page keeps interrupting me and scrolling me up after I scroll past them.
reply
sxa001
7 hours ago
[-]
Is this in the 'How it Works' section? I'll get that fixed - thanks for letting me know.
reply
ofcrpls
7 hours ago
[-]
reply
sxa001
7 hours ago
[-]
This is really helpful thanks. I've just pushed a build to disable the scroll-jacking - ETA 5-10 mins!
reply
mememememememo
7 hours ago
[-]
Oh man fix the site. If I scroll down it auto scrolls up after 2 seconds. And other bugs.
reply
sxa001
7 hours ago
[-]
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
reply
mememememememo
19 minutes ago
[-]
Thanks! No need to be sorry :)
reply
evanbabaallos
7 hours ago
[-]
Is this meant to replace databases?
reply
0xbrad
7 hours ago
[-]
Awesome!
reply
_joel
7 hours ago
[-]
"Ship now, pay later" you're not wrong.
reply
smrtinsert
7 hours ago
[-]
Do vibe coders need an api for an api? Sounds like something solvable with a skill
reply
Imustaskforhelp
7 hours ago
[-]
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.

reply
lpcvoid
7 hours ago
[-]
The world needs less vibe coded slop, not more
reply