TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What is your goto stack when building a MVP and why?

40 pointsby jennooalmost 6 years ago
I&#x27;ve been fiddling with a idea sometime and I want to turn it into a product. I first want to build a MVP. I can&#x27;t make a decision stack I am going to use. I find it difficult to make the difference between taking too much and too little account of an untenable and scalable &#x27;future&#x27;.<p>Do you consider SQL for your data layer or settle for NoSQL solution, or maybe for something like firebase? How do you think serverless functions can contribute to a MVP?

27 comments

legostormtroopralmost 6 years ago
Web app: Django+Postgres+Bootstrap locally done with Docker, deployed with Heroku.<p>With Django you get a lot straight out of the box, including: user management, admin dashboards. For an 1 or 2 person built MVP I wouldn&#x27;t even bother with a JS frontend, just Django forms &amp; Bootstrap templates and full HTTP&#x2F;POST forms. It simplifies everything and removes a point of failure.<p>You can get a solid functional system working very, very quickly. Which you can deploy to Heroku for $0 while you iterate, which can be converted to production ready system for as under $50&#x2F;month depending on what you need.<p>Desktop: Python+Qt - but thats old and probably bad advice in 2019.
评论 #20636707 未加载
quickthrower2almost 6 years ago
If I were you I’d use the stack you are most comfortable with if it can satisfy your requirements.<p>Otherwise choose what would be easiest to learn. E.g. if you know python but not web python, learn a python web framework instead of moving to NodeJS.<p>I’d probably keep it simple for an MVP and use a cloud managed SQL database, a popular stack like rails or something equivalent and use minimal client side JS (not a SPA) because that’ll reduce your time to getting it done.<p>Use cloud services to save you headaches as much as possible: managed databases, VMs preloaded with Linux. Cheat by chucking cloudflare in front of it to get SSL, unless your cloud can do the letsencrypt for you.<p>Avoid Kubernetes, docker, nosql, lambdas and anything else that’ll complicate things.<p>You want a monolithic crud app that serves up HTML like it’s 2006.
timtamboy63almost 6 years ago
Rails + Postgres for MVP. Very quick to prototype (you can build a CRUD app with a few commands) and fairly flexible. Then when you want to scale you can add a JS framework if you need and use Rails for the API piece.
AlchemistCampalmost 6 years ago
For me it&#x27;s Elixir + Phoenix because it&#x27;s what I build fastest with. While it&#x27;s not the very most performant stack in the world, it&#x27;s built for scaling and can handle far more users than anything I&#x27;ve built with has gotten.<p>Usually for the MVP, I&#x27;ll just stick with a traditional back-end MVC app and take advantage of all the Phoenix generators. As it gets a bit bigger, I might bring in Vue components on specific pages.<p>Once an app is really getting larger, I might bring in TypeScript on the front-end. I pretty much stick with Postgres the whole way unless there&#x27;s a really compelling reason to do otherwise.<p>Disclosure: I run <a href="https:&#x2F;&#x2F;alchemist.camp" rel="nofollow">https:&#x2F;&#x2F;alchemist.camp</a>, which teaches Elixir and Phoenix, but this screencasting project was the <i>result</i> of how much value I found in using Elixir for my last startup, not the reason I&#x27;m a fan of it now.
taninalmost 6 years ago
Heroku Postgres + Heroku + Any framework that you are comfortable with<p>For me, it&#x27;s Play + Vue (shameless plug: <a href="https:&#x2F;&#x2F;github.com&#x2F;GIVESocialMovement&#x2F;sbt-vuefy" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;GIVESocialMovement&#x2F;sbt-vuefy</a>).<p>The real time sink is not development. It&#x27;s ops. Configuring server, making sure it&#x27;s secure and online at all time, rotating logs, backing up database regularly, no-downtime deployment.<p>I&#x27;m using SQL because it&#x27;s more flexible than a NoSQL solution. You don&#x27;t need to plan in advance how to model your data. Just add a new index, and it works decently enough. I can also modify data without building a specialized admin UI.
mgamachealmost 6 years ago
Mostly pick one with a big community that other are using for quick prototypes. And (as others have said) ignore scaling unless scale is what you are prototyping. Use SQL to start. (MySQL&#x2F;PostGres&#x2F;Etc..) It&#x27;s better to denormalize if you need scale then have to normalize noSQL data if needed at the app layer (maybe that&#x27;s up for debate?).<p>C#&#x2F;.net It&#x27;s the one I know the best and supported for both fast prototyping (.net MVC apps) and scale [Linux and Windows]. Desktop Apps &#x2F; Mobile &#x2F; AWS Lambda etc... I use MSSQL for my data, but have used MySQL in the past.
badsavagealmost 6 years ago
Clojure is great for fast prototyping I usually start with Boot + System <a href="https:&#x2F;&#x2F;github.com&#x2F;danielsz&#x2F;system" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;danielsz&#x2F;system</a> and the holy grail: <a href="https:&#x2F;&#x2F;github.com&#x2F;danielsz&#x2F;system#the-holy-grail" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;danielsz&#x2F;system#the-holy-grail</a> It is a full-stack template with hot-reloading on both sides.
评论 #20603370 未加载
sergiotapiaalmost 6 years ago
Phoenix + Postgres, railsy enough to get it done quick and room enough to take the same codebase to a million user throughput. I wouldn&#x27;t have it any other way.
danrocalmost 6 years ago
Interesting that GraphQL did not come up.<p>For me, the fastest and most fun is: Postgres + Postgraphile (generates a GraphQL server based on your PG schema), with Vue&#x2F;Nuxt on the Frontend. Use Dokku on a DigitalOcean droplet for the backend, and Netlify for the frontend.<p>I am not a professional developer, though. I found the combo above really fun, simple, and easy to work with.
xhgdvjkyalmost 6 years ago
I would highly recommend completely ignoring scalability for your MVP. Choose tech you enjoy writing&#x2F;learning.<p>Right now you don&#x27;t have enough info to make a good performance decision, so you might as well choose a stack that will encourage you to complete the project.<p>As you learn more about the task, you will be able to decide what kind of tech makes the most sense.
d--balmost 6 years ago
JS + node + whateverDB.<p>You&#x27;ll need javascript for the frontend, so that&#x27;s a given. Since you&#x27;re using javascript, you might as well still use it for the backend. Node with express.js is super simple&#x2F;fast to deploy and will scale ok.<p>For the database, just pick the one you&#x27;re most familiar with...
p0dalmost 6 years ago
I have a saas sideline I have been selling for 10 years. Some time ago I settled with the toro php router, mysql, jquery and bootstrap. I do most of my coding in Sublime over ssh i.e. my test sites live in containers on a little core2duo desktop. Each container has it’s own Sublime. I can spin up any sublime, from any project, from any machine on my lan. As it’s internal go for a weak but performant ssh cipher or you will get too much latency. Copies of the same containers are used in the live environment. I have a container running Gitlab for versioning.<p>The core2duo box cost £25 and I love it. It’s also a file&#x2F;plex server. Duckdns has also been a great friend. As well as nginx, lets encrypt and basic auth. Keeping in mind this is my test system.
评论 #20601721 未加载
billconanalmost 6 years ago
I use mongodb, I found it is quick for prototyping. But I&#x27;m worried about race conditions, because I think its transaction is limited. But for my current stage (MVP), it seems to be fine.<p>I might eventually switch to postgresql, but I don&#x27;t know how to deal with data migration once my database changes. I want the program design to be stabilized first.<p>I will not use firebase, it will be very expensive. I have tried aws lambda once to create myself an email redirect service. I found it hard to debug.
ReD_CoDEalmost 6 years ago
We were planned to use these technologies to build our MVP with scale-up in mind too: Instead of OpenID and JWT we wanted to use Redis. For front-end: React.js + ES6. For back-end: PHP 7 (Laravel 5+) and Phyton 3. For the database: MySQL 8 (MySQL improved a lot after this version) + Redis. Flutter for MVP. And Kotlin and Swift for the final product.<p>But I decided to build our MVP with ODOO ERP and CMS to test and then when is needed develop our own product.<p>What do you think about this?
jellevdvalmost 6 years ago
Gatsby starter + Firebase For Mobile: react native + firebase<p>People always complain about Firebase being expensive, but how many apps really make it to that phase that it becomes?
wingerlangalmost 6 years ago
Plain HTML, PHP I learned 10 years ago and a text file for a database, as simple as possible or else I will lose interest before getting my environment even setup.
Foober223almost 6 years ago
C++ and postgress. In theory it should be the worst choice for fast prototyping. No interactive development like lisp. Forces types on you. No awesome web framework.<p>But I&#x27;m so familiar with the language and tool chains I can prototype extremely rapidly. With just a few minimal sane decisions, the prototype can be &quot;web scale&quot; buzzword compliant.
ecfalmost 6 years ago
I haven&#x27;t seen Meteor.js mentioned here yet, which is a shame. It&#x27;s great for quickly building out MVPs due to their out-of-the-box real-time functionality.<p>Things can get a bit bogged down once there are a certain number of components that chain update each other and Meteor still primarily uses Mongo, but neither should be a problem for a MVP.
christiansakaialmost 6 years ago
If you don’t know what to use. Use Javascript
评论 #20598074 未加载
评论 #20598297 未加载
taf2almost 6 years ago
Nginx- unicorn- rails - MySQL + redis<p>Everything is crud so rails with percona is nice and scalable and easy to deploy.<p>Redis solves all the unsolvable problems... locking, queuing, caching, magic kittens, and it’s easy to operate at scale<p>Nginx - makes it easy to have a robust front end for serving up css &#x2F; js &#x2F; images with http2<p>Unicorn is just nice way to run rails apps
eko24almost 6 years ago
Web: Create React App for the front-end and NodeJS+ExpressJS+MongoDB&#x2F;MySQL for the backend. Any MVP could be delivered under one week.<p>On the other hand - I really love what other folks saying. As for myself, I&#x27;m thinking about trying out some Django&#x2F;Rails setups
gnuralmost 6 years ago
I&#x27;ve recently re-discovered Google app engine, together with firestore for any persistence it&#x27;s truly a low friction MVP environment.<p>I usually use it together with go and Vue for the frontend.
droptablemainalmost 6 years ago
Digital Ocean droplet with LAMP stack. Lumen for the API and Web components with Polymer for the front-end
pbiggaralmost 6 years ago
We&#x27;re building a new tool which makes it really easy to build backends, and MVPs are particularly easy. We literally built someone&#x27;s product with them during a one hour onboarding earlier. <a href="https:&#x2F;&#x2F;darklang.com" rel="nofollow">https:&#x2F;&#x2F;darklang.com</a> (or email me: paul@darklang.com)
评论 #20598897 未加载
villgaxalmost 6 years ago
Node.js(If needed) + jQuery + Theme + Firebase &amp; Heroku deploys
BjoernKWalmost 6 years ago
HTML, Bootstrap and GitHub Pages.
leksakalmost 6 years ago
No-one using React?
评论 #20601870 未加载
评论 #20600057 未加载