Am I missing something? The entire point of next.js is that it's backend+frontend in one project
apsurd 3 days ago [-]
that’s likely the promise but it’s so confusing and high cognitive overhead to maintain that backend <-> frontend relationship. ‘use client’ - i think the special sauce for why people use nextjs is all frontend based. the frontend that comes from the backend.
nextjs dx is a special kind of hell. disclaimer: im just a simple rails guy.
chrysoprace 3 days ago [-]
Next.js is a poor choice for a client-side application. It is first and foremost a server-side framework, and trying to force it to be client-side is to work against it. There are so many better options than Next.js for dedicated client-side front-ends.
hirako2000 3 days ago [-]
Nextjs is also a bundler for web applications. And it deploys the front end assets.
It's yet another backend framework, added that it only runs on vercel infrastructure.
There are better front end and back end servers, those that simply rely on nodejs to serve. Next.js does that, without vercel.
virgil_disgr4ce 1 days ago [-]
I don't understand this perspective. I've developed, delivered and maintained countless Next.js projects and never come close to considering it "high cognitive overhead." It's among the nicest DX I've experienced. It has a lot of features, I guess, but you don't have to use them if you don't like them. Next.js has very little to do with the frontend. The frontend is literally just react, which is why I commented in the first place. People keep acting like it's a "frontend framework" which doesn't make any sense at all.
apsurd 1 days ago [-]
React is a frontend framework. How do you get around that? It's invented entirely to handle client-side UX and reactive DOM updates which have to be DOM because it for the browser which is a frontend. Are you saying nextjs is the backend and react is just react, it's not nextjs' fault?
I'd say we disagree on the simplicity then: hydration, nextjs API reinventions of every interaction else 'use client' as an escape hatch which means it runs on the client but then what does the non 'use client' code do if nextjs is not a client-facing framework?
NoItsDanger 3 days ago [-]
I’ve been saying for years we need CCR (Client Centric Rendering).
What we do is have the server just serve the page and let the client handle most of the rendering.
It’s novel and innovative
anon7000 3 days ago [-]
Smells like SPA
shunia_huang 3 days ago [-]
Isn't this html + javascript?
socialest 2 days ago [-]
I let the LLM tokens flow. Usually it ends up saving me innovation tokens.
bdcravens 3 days ago [-]
To be honest, the use of AI in your marketing doesn't bother me. But paired with the fact that you have a newish HN account with no comments ever, and no comments on your own "Show HN" in response to others, doesn't put off strong trust signals.
andrewww-dev 16 hours ago [-]
Hey! I created a new account on HN just to have an account specifically for Typebase and I'm sorry I dind't answer more quickly the post got traction a during the weekend a couple of days after I posted. I'm answering everything right now!
stack_framer 3 days ago [-]
The pronunciation of "Vercel" near the end of the "Typebase in 100s" video was VER-cel, with the emphasis on the first syllable, instead of ver-CEL with the emphasis on the second syllable.
Was the video generated by AI?
andrewww-dev 16 hours ago [-]
The audio is actually from a guy I hired on Fiverr but you are right that the pronunciation sounds kind of weird on Vercel.
cliche 3 days ago [-]
Duh
jchook 3 days ago [-]
[flagged]
phren0logy 3 days ago [-]
I love the (well-disclosed) fake testimonials. Hilarious!
adamddev1 3 days ago [-]
> “I’ve told four separate therapists about Typebase. Two stopped taking me as a client. The other two are now shipping an app with it.”
So good. I laughed out loud at this.
andrewww-dev 16 hours ago [-]
Thanks! I'm glad you liked them!
brianpg 1 days ago [-]
I have deployed and maintained plenty of diff setups on GCP, AWS, colo, and I have also used AI for coding, my concern is do we really trust AI to do prod deploy and maintenance of the backend yet? Not to mention what are the limitations here, someone already mentioned queues? But for a straightforward site with limited complexities, it might be cool to try out.
andrewww-dev 16 hours ago [-]
Hey! Even tho I use AI to code faster I still review every line of code and I test every new feature. About the limitations, I'm a single developer working after work trying to add as many features as fast as I can so some of them may take more time to be ready. The good thing about Typebase is that under the hood is a normal TypeScript server so you can add any feature you want even if Typebase doesnt implemented natively!
desireco42 6 hours ago [-]
I tried it on small project. A lot of promising ideas. I don't even care it is so new.
What didn't work for me is the build step. In a bigger project it should be normal to have this but I really love to interactively build and having to restart and rebuild after each change is issue for me.
andrewww-dev 30 minutes ago [-]
I'm glad you liked it! Where you using a local build or where you uploading to a server on each change?
For the local build we have the 'generate-server --watch' command and I want to add an option so on every rebuild it runs another command, something like 'generate-server --watch --command "pnpm run dev"' so on every change the server runs the latest version of the code.
For when you upload to a server theres no much we can do because the builds on the server take too long, something we have on the roadmap is having our own server provider and the number 1 priority is that is so fast that you can deploy a new version on every local change.
scrollaway 3 days ago [-]
Scratching my head a little bit here, I'm not sure how this differs from NextJS (or Vite) with a layer of drizzle & better-auth.
Not that that layer isn't important. We ended up building something like this at Ingram, nextkit: https://github.com/ingram-technologies/nextkit - but we distribute it as a set of micro libraries that work well together rather than a unified framework. (Auth is nk-auth, built on top of betterauth, and sql is nk-db, built on top of drizzle)
You got to pretty much the same conclusions we did though regarding the "why".
andrewww-dev 12 minutes ago [-]
[flagged]
rgbrgb 3 days ago [-]
I’ve been curious about trying the Supabase type of RLS model for an app but haven’t yet. I like the idea of the db defined api like postgraphile and hasura but had trouble with testing and ergonomics. This looks pretty nice though, it’s cool that you’re thinking about ergonomics for working with coding agents. I feel like a hard thing with that rn is that everyone is kind of figuring out different workflows for AI coding right now so it’s hard to optimize DX. Can you talk a little about your personal agent workflow and how this fits it?
k4rli 3 days ago [-]
I've only had experience in one full-stack project with supabase RLS so experience is limited. However it seemed like a mess. Seems much more human-maintainable to have a classic spring/golang backend. For sure in some projects, esp mobile apps, it makes more sense, and fable-level models might also keep it from being full spaghetti.
Also Supabase at that time wasn't reliable and it's not really made for self-hosting. Felt almost as bad as Github stability these days.
Still, based on this limited experience, I've been avoiding RLS and supabase.
NewJazz 3 days ago [-]
I thought supabase was mainly for self hosting? Like it was self-hostable firebase... Not too familiar with it though.
andrewww-dev 3 minutes ago [-]
[dead]
desireco42 3 days ago [-]
I was about the ask a question but you just answered how it is built. I guess I will try it out, it sounds really good.
I love your approach, fake testemonials and all.
andrewww-dev 16 hours ago [-]
Thanks!
ishbrzero 3 days ago [-]
Sounds very interesting. I have to agree I didn't like RLS as well. I mean, it's useful but it seems too many knobs to turn...
andrewww-dev 16 hours ago [-]
Yeah I had the same problem, I think is super easy to shot yourself by using RLS
ramon156 3 days ago [-]
Fake reviews are a hard no-no imo. Really weird addition, but I suppose it wasn't you who got the idea.
Looks an awful lot like a orpc, just built on top of drizzle instead of raw queries. I'm sure some people want this, but it seems like gross duct tape that will bite you in three years
andrewww-dev 16 hours ago [-]
Hey! I actually added the fake reviews myself, I wanted to give some personality to the landing.
> Looks an awful lot like a orpc, just built on top of drizzle instead of raw queries
Typebase is built on top of oRPC, the idea with Typebase is that you can build everything on super simple way and Typebase will take care of the rest.
dinkleberg 3 days ago [-]
I’m very surprised to see others commenting here that they like the fake reviews. Claude loves adding that shit, but you’re allowed to modify and remove the junk it produces.
> * None of these people exist. We checked. Twice. Legal is chill
Maybe I’m just the old man yelling at the clouds, but can we not have some integrity and actually put the truth out there? There is nothing wrong with using AI, but we’re still responsible for our work.
brianpg 1 days ago [-]
I don't know, I have plenty of gray hair, but I still love a little tongue in cheek humor. I still remember the first cold email I got asking for 12 minutes of my time - I replied. Now if the disclaimer was buried at the bottom of the page and this product was asking for money, I would agree there is more of a trust issue here.
xixixao 3 days ago [-]
Very cool!
Note that you can run Convex on top of your own Postgres, and we do this for our internal apps, with very nice performance (plenty for our internal use cases).
andrewww-dev 16 hours ago [-]
Thanks! But even if you run Convex on your own Postgres you still need to follow the Convex DB model right?
bosky101 3 days ago [-]
very cool. though the deploy wasnt clear if i can just run migration on some pg url. and it wasnt clear if i can bind some middleware into my existing app server (like express)
andrewww-dev 16 hours ago [-]
You can use your own DB by saving the URL on DATABASE_URL inside .env. For now migrations are not supported but they are coming on the next version. Another feature that is on the pipeline is being able to generate the server so you can bind it to your current server
catlifeonmars 3 days ago [-]
What, in your opinion, is this not a good fit for?
andrewww-dev 16 hours ago [-]
I think on of the best things about Typebase is that it allows you to have typed actions you can call from your backend as if it where functions of your front end, for that reason I dont think Typebase is a great tool when you have apps on different languages apart from TypeScript
SillyUsername 3 days ago [-]
Enterprise software, stuff that you expect to scale exactly because it has queues and distributed computing.
dsabanin 3 days ago [-]
Looks useful, congrats
andrewww-dev 16 hours ago [-]
Thanks!
fami-hn 10 hours ago [-]
[flagged]
sophie2003 14 hours ago [-]
[flagged]
SifatAhmed 3 days ago [-]
This looks great. Question specifically on the Cloudflare Workers target: when you deploy there, does Typebase use D1 for the DB, or does the Postgres/Neon backend stay the same regardless of which server target you pick (Vercel/Workers/Deno) - i.e. is the DB layer decoupled from the server runtime, or does choosing Workers also mean choosing D1? I ask because I've shipped a small Workers+D1 service and the main friction I've hit isn't the server code, it's Workers' constraints around D1 (no long-running connections, HTTP-based driver quirks) - curious whether Typebase abstracts that away or whether you still feel it at the DB layer when targeting Workers specifically.
optimisticedits 3 days ago [-]
I see no code there to automatically pick D1 for the DB when you deploy to Cloudflare.
Hey! For now we only support Neon but the idea is too add more DB providers soon. I wanted to build a "base layer" to show that Typebase is versatile enough, I'll add D1 to the priorities
Personally not for me. These are very productive once you learn the shape they expect.
But the wheel needs to be reinvented on how to do everything.
I ran have straight forward verbose code with no hidden control flow
I’m reminded of this essay discussing frameworks versus libraries [0].
[0] https://tomasp.net/blog/2015/library-frameworks/
nextjs dx is a special kind of hell. disclaimer: im just a simple rails guy.
It's yet another backend framework, added that it only runs on vercel infrastructure.
There are better front end and back end servers, those that simply rely on nodejs to serve. Next.js does that, without vercel.
I'd say we disagree on the simplicity then: hydration, nextjs API reinventions of every interaction else 'use client' as an escape hatch which means it runs on the client but then what does the non 'use client' code do if nextjs is not a client-facing framework?
What we do is have the server just serve the page and let the client handle most of the rendering.
It’s novel and innovative
Was the video generated by AI?
So good. I laughed out loud at this.
What didn't work for me is the build step. In a bigger project it should be normal to have this but I really love to interactively build and having to restart and rebuild after each change is issue for me.
For the local build we have the 'generate-server --watch' command and I want to add an option so on every rebuild it runs another command, something like 'generate-server --watch --command "pnpm run dev"' so on every change the server runs the latest version of the code.
For when you upload to a server theres no much we can do because the builds on the server take too long, something we have on the roadmap is having our own server provider and the number 1 priority is that is so fast that you can deploy a new version on every local change.
Not that that layer isn't important. We ended up building something like this at Ingram, nextkit: https://github.com/ingram-technologies/nextkit - but we distribute it as a set of micro libraries that work well together rather than a unified framework. (Auth is nk-auth, built on top of betterauth, and sql is nk-db, built on top of drizzle)
You got to pretty much the same conclusions we did though regarding the "why".
Also Supabase at that time wasn't reliable and it's not really made for self-hosting. Felt almost as bad as Github stability these days.
Still, based on this limited experience, I've been avoiding RLS and supabase.
I love your approach, fake testemonials and all.
Looks an awful lot like a orpc, just built on top of drizzle instead of raw queries. I'm sure some people want this, but it seems like gross duct tape that will bite you in three years
> Looks an awful lot like a orpc, just built on top of drizzle instead of raw queries
Typebase is built on top of oRPC, the idea with Typebase is that you can build everything on super simple way and Typebase will take care of the rest.
> * None of these people exist. We checked. Twice. Legal is chill
Maybe I’m just the old man yelling at the clouds, but can we not have some integrity and actually put the truth out there? There is nothing wrong with using AI, but we’re still responsible for our work.
Note that you can run Convex on top of your own Postgres, and we do this for our internal apps, with very nice performance (plenty for our internal use cases).
On Cloudflare, it should use the `@neondatabase/serverless` driver configured here https://github.com/typebase-io/monorepo/blob/fa3af0b71126caa...