Live data from Hacker News

Ask HN: What web stack would you use for startup, and why?

news.ycombinator.com

1–10 of 45 posts

Ask HN: What web stack would you use for startup, and why?

#1
If you were to build a startup or a solo side project, what web stack would you use and why? Web stack meaning backend and frontend. To make a more specific use case if that's easier, say you need:

  1) Auth (local accounts + OAuth)
  2) Simple user dashboard with some live updates (Websockets, SignalR, etc)
  3) Blog (simple db read/write)
The goal is to bring the user a good experience, but use the least time developing since it's a side project. What do you reach for? Django + React? Laravel + Livewire? ASP.NET + Blazor? Next.js + Prisma?

Re: Ask HN: What web stack would you use for startup, and why?

#2
Supabase + Next.js is what I'm using.

To cover your list:

- Auth: Supabase has auth, with oauth support for many services. Also prebuild UI for login forms etc. It's really easy to set up

- Live updates: Supabase has a realtime api to send messages, or subscribe to db changes

- Database: Supabase is basically a Postgres database with a bunch of stuff on top, it generates a REST/GraphQL api from your schema, meaning you don't have to make endpoints.

It's incredibly productive as it covers all the basics. It's open source so you are not locked in, and they have a free plan that will get you quite far.

For the frontend Next.js is my preference, but you could opt for other frameworks if you are more familiar with them. Next.js on Vercel is really easy to set up with preview builds, automatic deployments etc.

Re: Ask HN: What web stack would you use for startup, and why?

#3

Supabase + Next.js is what I'm using. To cover your list: - Auth: Supabase has auth, with oauth support for many services. Also prebuild UI for login forms etc. It's really easy to set up - Live updates: Supabase has a realtime api to send messages, or subscribe to db changes - Database: Supabase is basically a Postgres database with a bunch of stuff on top, it generates a REST/GraphQL api from your schema, meaning y…

Cool! Seems very productive. Only thing I'm thinking of is reliability and the lack of control since you aren't hosting it yourself.

Re: Ask HN: What web stack would you use for startup, and why?

#4
Full .NET stack.

- Self-hosted identity management, "ASP.NET Core Identity", using new scaffolding from .NET 8

- Blazor, using the "Auto" mode from .NET 8: Default to SSR, autopromote to Server mode for live updating components

- EF Core for DB handling

The idea is to focus on keeping things simple and easy for the developer. The most annoying part about the stack is the way Microsoft names things.

Keeping the rendering logic fully server-side lets you use your EF DbContext/entities directly in your components, taking on some (I'd say minor) technical debt to greatly simplify development.

You won't need a fully separate SPA with a dedicated API. Not yet, maybe ever. You can migrate your components to Blazor Wasm piecemeal if/when you reach a stage where using Server mode starts giving you troubles.

Re: Ask HN: What web stack would you use for startup, and why?

#5
if you want to get up and running quickly, choose what you're familiar with.

personally, I'd go with Rails + SQLite. skip OAuth unless you absolutely need it.

> Simple user dashboard with some live updates (Websockets, SignalR, etc)

you probably don't need live updates in v0.1. skip it.

> Blog (simple db read/write)

any static site generator + markdown. I use nanoc, but any SSG would do.

Re: Ask HN: What web stack would you use for startup, and why?

#6
Rails (front and back)

Turbo handles live updates

For authentication, I'd use the devise gem, and plan for OAuth later.

I'd use Pundit for authorisation.

I'd use sendgrid for email and stripe for payment.

I'd host on FlyIO; though I'd consider Heroku as 50$ a month would likely cover most needs, and it's super simple.

All up blog would take about an hour.

Then it's about style, and for that I'd go with w3schools css. There are a pile of templates and it's dirt simple to add. IMHO tailwinds is a sledge hammer when most need a ball-peen hammer.

Re: Ask HN: What web stack would you use for startup, and why?

#7
post #4

Full .NET stack. - Self-hosted identity management, "ASP.NET Core Identity", using new scaffolding from .NET 8 - Blazor, using the "Auto" mode from .NET 8: Default to SSR, autopromote to Server mode for live updating components - EF Core for DB handling The idea is to focus on keeping things simple and easy for the developer. The most annoying part about the stack is the way Microsoft names things. Keeping the render…

Yeah I've been looking at Blazor for some time, and the .NET 8 updates are great, but I just don't know if I like the .razor DSL and the fact that things are either SignalR (latency) or .NET runtime in the shape of WASM (huge bundle, literally the kitchen sink).

The biggest upsides to Blazor is that, as you said, greatly simplify development as you basically have only one code base to think about with Blazor Server, and you save a lot of time not worrying about the backend / frontend bridge. On the other side, there is a demon on my shoulder whispering that the customer doesn't care about developer UX, and they'd go for a native web-app over a latency-riddled or slow initial load web app.

Re: Ask HN: What web stack would you use for startup, and why?

#8
post #3

Supabase + Next.js is what I'm using. To cover your list: - Auth: Supabase has auth, with oauth support for many services. Also prebuild UI for login forms etc. It's really easy to set up - Live updates: Supabase has a realtime api to send messages, or subscribe to db changes - Database: Supabase is basically a Postgres database with a bunch of stuff on top, it generates a REST/GraphQL api from your schema, meaning y…

Cool! Seems very productive. Only thing I'm thinking of is reliability and the lack of control since you aren't hosting it yourself.

You could self host as it's all open source, but that would be a lot more work..

Reliability, it depends on your app and requirements. Been using them for about a year and it has been really solid, the few times I did have some issues the support was really quick and helpful. But I do see your point, it might not work for everyone.

Re: Ask HN: What web stack would you use for startup, and why?

#9
post #3

Earlier quoted context omitted.

Cool! Seems very productive. Only thing I'm thinking of is reliability and the lack of control since you aren't hosting it yourself.

You could self host as it's all open source, but that would be a lot more work.. Reliability, it depends on your app and requirements. Been using them for about a year and it has been really solid, the few times I did have some issues the support was really quick and helpful. But I do see your point, it might not work for everyone.

Self-hosting Supabase is pretty hard when you consider mail set up, and all the config like setting your own domain/secrets/config without the full dashboard Supabase managed service provides, doesn't it? Aka you can't just get-up-and-go fill in a nice UI/form on an EC2 instance AMI template for Supabase...

Re: Ask HN: What web stack would you use for startup, and why?

#10
post #7
post #4

Full .NET stack. - Self-hosted identity management, "ASP.NET Core Identity", using new scaffolding from .NET 8 - Blazor, using the "Auto" mode from .NET 8: Default to SSR, autopromote to Server mode for live updating components - EF Core for DB handling The idea is to focus on keeping things simple and easy for the developer. The most annoying part about the stack is the way Microsoft names things. Keeping the render…

Yeah I've been looking at Blazor for some time, and the .NET 8 updates are great, but I just don't know if I like the .razor DSL and the fact that things are either SignalR (latency) or .NET runtime in the shape of WASM (huge bundle, literally the kitchen sink). The biggest upsides to Blazor is that, as you said, greatly simplify development as you basically have only one code base to think about with Blazor Server,…

Blazor Server isn't inherently latency riddled. Blazor Wasm isn't necessarily slow to initial load with .NET 8. IIRC the compiler is also really good at trimming the Wasm bundle when publishing in Release mode.

The neat thing about the new stuff in .NET 8 is that you can choose the interactivity at the component level, so if some component really sucks when used with Server interactivity, you can take the extra time to convert it to Wasm w/ some backend API.

You should also ask your shoulder demon much would even be interactive in the first place. SSR'd pages with forms can get you very far.

Post reply on HN