Live data from Hacker News

Ask HN: What would be your stack if you are building an MVP today?

news.ycombinator.com

391–400 of 736 posts

Re: Ask HN: What would be your stack if you are building an MVP today?

#391
post #97

I'm currently approaching MVP / ready to pitch stage on something and these are my choices- Rails 7.1 w/ Tailwind (esbuild, not import maps) Postgres DaisyUI for Tailwind UI components View Components for Ruby Nothing particularly "hot" but there are some newer tools Post MVP, the only thing I'm looking to change is potentially replace a very heavy data analytic background job with a Crystal version of it. Will be su…

Sounds great. Curious, what did you use for auth?

I'm using Devise. It's rock solid and goes along with a general sense of "use trusted solutions" for me. I will be adding Omniauth and the Devise plugin for it, but that will be the extent of what I need in the future.

Re: Ask HN: What would be your stack if you are building an MVP today?

#393
Current word count:

* javascript / js: 95

* rails: 89

* django: 86

* postgres / postgresql: 77

* react: 75

* python: 52

* supabase: 52

* elixir: 44

* ts / typescript: 41

* nextjs: 31

* sqlite: 29

* laravel: 28

* vue: 27

* phoenix: 27

* net: 26

* htmx: 23

* node: 23

* html: 20

* github: 20

* tailwind: 18

* rust: 18

* ruby: 18

* aws: 17

* vercel: 16

* prisma: 16

* docker: 16

* graphql: 15

* firebase: 15

* php: 14

* flask: 13

* svelte: 13

* hotwire: 13

* liveview: 12

* curl: 12

* grep: 12

* bootstrap: 11

* fastapi: 11

* spa: 11

* java: 11

* linux: 10

* express: 10

* sveltekit: 10

* go: 10

Re: Ask HN: What would be your stack if you are building an MVP today?

#394

Nothing really beats Rails. Use something like Jumpstart (jumpstartrails.com) and Avo ( https://avohq.io ) and you scaffold a full consumer-ready app in literally a few hours. The thing that bugs me the most with Next.JS and the whole JAMStack movement is that, yeah, you get from "git clone" to deployed on Vercel in two minutes, but if you need to create real app features like a sturdy admin, accounts, authorization,…

Thanks for making Avo! I'd been building something similar in the application I'm currently working on and it was nice to have something that already figured out much of the hard stuff to replace my shitty implementation.

Re: Ask HN: What would be your stack if you are building an MVP today?

#395

If you're building a B2B app: - Supabase on the backend (REST APIs are a solved problem, no need to spend a single hour on it) - Auth0 for authentication (too risky to manage authentication manually) - react + react-admin SPA on the frontend (does 80% of the job for B2B apps) - lambda functions (for business logic that can't be exposed on the frontend) API-centric SPAs are such a time saver... when you don't have to…

Curious why you suggest Auth0 and Supabase. What is wrong with Supabase auth?

Re: Ask HN: What would be your stack if you are building an MVP today?

#396
AWS + Node.js + Lambda + Aurora + API Gateway + ElasticCache + CloudFront + SQS + MediaLive + MediaConvert.

We scaled up to hundreds of thousands of viewers + telemetry worldwide with no issues. Should be breaking into millions real soon now with our next few onboarding's.

We also have an express backend for the UI that's running on some puny EC2 instance.

Re: Ask HN: What would be your stack if you are building an MVP today?

#397

Definitely old schools. I am building a MVP right now(kinda building my parachute while jumping off the plane)and I went with Django. And here is why. 1. Very vibrant community of devs and time-tested open-source libraries.If you want a multi-tenancy there is a library for that. IF you want stripe integration there is one for that. If you want "fully built out" services, then we have a plethora of free and paid templ…

do you still use builtin views/templates ?

Yes! Trying to keep it as simple as possible! Might try this whole HTML over the wire after I have made some dough. Not now tho. My customers don’t give a damn about my stack

Re: Ask HN: What would be your stack if you are building an MVP today?

#398
I recently built a Web based MVP and used Node-Red as backend. Frontend was python+flask, postgres and everything dockerized.

I've mainly used sinatra and rails for Web apps and always found it difficult to define a clear api on which the frontend was based on (I.e in order later to build ios or android apps off).

Using Node-Red forced me to build an api for the frontend, the frontend has no direct contact with postgres.

Plus I found it to be more flexible than directly coding when I wasn't even sure what the database schema would look like.

Database modelling was done with pgModeler, I.e. No migrations and more pgsql functions and triggers.

Re: Ask HN: What would be your stack if you are building an MVP today?

#399

Django, in my previous role we did MVP websites for academics and the speed of getting a site up and running and deployed was just so fast. I’ve never worked with anything else that is as fast, anything like FastAPI or Flask or Express or similar either requires additional libraries to add really basic and common functionality or you have to roll it yourself. I personally don’t think that if you’re building an MVP yo…

The Django Book is phenomenal. It is just so well-written and so clear that it makes my heart ache: https://django-book.readthedocs.io/en/latest/introduction.ht...

Re: Ask HN: What would be your stack if you are building an MVP today?

#400
post #309

Earlier quoted context omitted.

For context I'm someone who spent nearly 20 years doing almost exclusively python dev, attended the first DjangoCon in 2008, ran the Django community blog during its formation heyday back in the mid 2000's and built tons of Django modules, apps, sites etc, have commits on the Project from way-back, tech edited Django books, etc... Did rails for a short while in 2010-2012 and absolutely hated it then spent 2012-2020 d…

As a long time python dev, I’m now not certain why I would use python for a web app, over typescript on Next, other than familiarity. Sharing types between the server and client, and only having to manage _one_ software ecosystem is great.

Some potential reasons:

1. The data layer, if you want a high-quality ORM and migrations

SQLAlchemy + Alembic (or Django ORM + its built-in migrations) are battle-tested systems that I trust will scale to large teams and not break my data.

If you're more of the persuasion to write raw SQL, or to just use a SQL query builder, Python is less of a draw these days (although SQLAlchemy's query builder is quite nice and can be used independent of its ORM).

2. Ties to the data science + machine learning universe

If your back-end intersects with these in ways that are not cleanly separable into services, Python might be a good (or the only) option. Even if you can cleanly separate, you're effectively committed to managing Python on the back-end.

3. Stability

For good and ill, the JavaScript ecosystem churns far more rapidly.

4. Familiarity

To your point: there's nothing wrong about optimizing for creature comforts and/or velocity from just having done it before and fired the foot-guns.

---

I agree that using a single language provides an advantage at the API boundary. Curiously, my experience is that most modern javascript frameworks (like NextJS) don't have a lot to say about how to structure this in practice. Maybe that's fine, but I'd love to see some opinions emerge in the ecosystem.

Amongst other things, I typically want to:

- Share types (typescript `interface`s, etc.) between the front-end and back-end (while avoiding accidentally bundling back-end code into the front)

- Have run-time types (via `zod`, `io-ts`, whatever) for (at minimum) API request structures so I can validate my inputs

- Have a story about how API validation failures are shipped back to the client (and how the client exposes them to the users, e.g. error messages when filling out form fields)

- Differentiate between API types and my underlying data model (the `User` in my database is somewhat to very different from the `APIUser` I ship to my client)

In the python universe, Django, Flask, and FastAPI all have well developed opinions about run-time types, validation failures, and API types vs. data models.

Post reply on HN