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 would be your stack if you are building an MVP today?

459 pointsby nvlnover 2 years ago
Specifically the backend. I&#x27;d love to hear your reasons. Do you keep one eye on what the stack would be post MVP?<p>1. Old schoolish (VPS - Maybe DO, Django&#x2F;Flask&#x2F;Rails&#x2F;Remix&#x2F;Next with postgres)<p>2. Supabase etc with JS&#x2F;TS on either side of the network<p>3. Lambda&#x2F;Cloud functions with Firebase&#x2F;Dyanamo DB&#x2F;Cosmos DB etc<p>4..n. What else and why?

342 comments

nyxcharonover 2 years ago
After working with the PETAL (Phoenix, Elixir, TailwindCSS, Alpine.Js, Liveview) stack at $JOB for a while now, I have to say I&#x27;ve never been more productive.<p>Early on I would still have to lean on Alpine heavily for various JS interactions but with all the features Liveview has been adding and improving on (Hello JS module!) I find myself needing it less and less. Liveview really has been a game changer for me. Tailwind has more or less fixed most of my frustrations with CSS and has worked itself nicely into the company design system resulting in nice re-usable components that can be easily customized for those one-offs. Elixir is a nice language to use and I find myself missing features of it when working with other languages. Phoenix is well structured for projects and the newer generators solve a lot of common issues&#x2F;features in projects like user auth in a reasonable way.<p>Depending on the needs of the app I&#x27;d look into deploying to Fly.io otherwise I&#x27;ve been using Kubernetes with little issue. I&#x27;ve toyed with Nomad for orchestration but haven&#x27;t used it enough to give an opinion. I do wander if it&#x27;s a nice middle ground for those who don&#x27;t need the full suite of what K8s offers.
评论 #34538514 未加载
评论 #34539464 未加载
评论 #34538903 未加载
评论 #34540140 未加载
评论 #34539854 未加载
评论 #34540444 未加载
评论 #34545600 未加载
评论 #34539890 未加载
评论 #34540118 未加载
评论 #34553387 未加载
评论 #34539852 未加载
评论 #34555808 未加载
jrvarela56over 2 years ago
Personally big on Rails (use it at work every day). But, my last MVP I did with TS&#x2F;Next&#x2F;Mantine&#x2F;Supabase&#x2F;Vercel.<p>Reasons:<p>- I&#x27;ve been using Rails as an API only, so having to grok views felt like a waste. My React skills made me feel that learning how to make complex views in my backend was a waste of time.<p>- One type of bug I hate is ensuring my API calls have the right schema. With Supabase and TS in the frontend, this is a non-issue: export types from db schema and all frontend requests are typed.<p>- Supabase is something for sure: I had been eyeing it for a while now, and it did not disappoint. Getting endpoints - even with realtime updates&#x2F;subs in the frontend - after just defining a schema is magical.<p>- Auth is super simple with RLS - all this uses my SQL knowledge and makes me double down on it, which seems like a sane choice given it&#x27;s been around for decades.<p>- Mantine gives me a large list of prebuilt components. This isn&#x27;t exclusive to this stack but would highly recommend using something like this instead of just Bootstrap or Tailwind on its own.<p>Overall I&#x27;m happy with the results, feels way faster than my React&#x2F;Rails workflow. Way less time in the backend (models, migrations, presenters, etc), more focus on tweaking the product.<p>Con: does not move me in the direction of using Python more. Feel like this is going to be a must-have for AI-powered components.
评论 #34532361 未加载
评论 #34533981 未加载
评论 #34535620 未加载
评论 #34532535 未加载
评论 #34534856 未加载
ultrasounderover 2 years ago
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 &quot;fully built out&quot; services, then we have a plethora of free and paid templates. There are folks here(HN User rlawson)who have built many side projects using Django that they have monitized. if that monetization is your goal, then time is money and Django is your friend. 2. Very easy to deploy. This is a Major major requirement for someone like me(dabbling in webdev). Even after the demise of Heroku hobby dynos, there are things like Railway.app which lets you git deploy app, try it out and then scale it if you want. 3. Lastly, Javascript not necessary- I am a &quot;hobby python dev&quot;. I don&#x27;t have the inclination nor the time to learn yet another Javascript framework. I have an idea, know a bit of Python and I want to iterate it on my idea fast and get to the customer ASAP. Meaning, I can deploy a MVP without having to dabble with JS while jumping through all the different web pack configurations. A big win for me. So, &quot;boring stack&quot; definitely.
评论 #34535484 未加载
评论 #34533731 未加载
评论 #34536995 未加载
评论 #34538230 未加载
评论 #34535480 未加载
评论 #34533990 未加载
评论 #34535891 未加载
评论 #34534966 未加载
评论 #34535219 未加载
评论 #34536495 未加载
physicsguyover 2 years ago
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.<p>I personally don’t think that if you’re building an MVP you should be worrying that much about how to store users in the database and add RBAC and building a way to add middleware and a storage layer and all of that crap. It’s not worth it, your application is not a special snowflake.<p>Edit: Should say that with that I mean serving HTML via Django. Usually I would use Bootstrap for layout. Very occasionally I’d add an API for some interactivity but I think for most MVPs interactivity is likely to be a secondary concern until later.
评论 #34531338 未加载
评论 #34531069 未加载
评论 #34532792 未加载
评论 #34536943 未加载
评论 #34531575 未加载
评论 #34532334 未加载
skizmover 2 years ago
HTML, css, js, (maybe jquery and font-awesome if I want to get fancy) and all static files dumped in an S3 bucket for as long as I can get away with it, then django if I need anything more. Not that I think python&#x2F;django is the &quot;best&quot;, but it is what I know and it&#x27;s got all the batteries included out of the box. I&#x27;ve never made a sufficiently advanced UI that required react&#x2F;vue&#x2F;etc. So I still just stick with html&#x2F;css&#x2F;jquery on the front end.<p>Semi-related side note: I do use TS&#x2F;react in my 9-5, but the more I use it professionally, the more I&#x27;m convinced there is no need for it outside of trying to get a job, IMO.
评论 #34537419 未加载
评论 #34538227 未加载
评论 #34566415 未加载
评论 #34540045 未加载
评论 #34563576 未加载
v3ss0nover 2 years ago
Hhere is quick survey :<p>Regarding backend choices:<p><pre><code> curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i Django | wc -l 36 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i supabase | wc -l 17 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i rails | wc -l 28 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i node | wc -l 15 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i elixir| wc -l 14 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i phoenix | wc -l 7 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i fastapi | wc -l 7 </code></pre> For Frontend Choices :<p><pre><code> curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i svelte | wc -l 9 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i React | wc -l 34 curl &quot;https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34530052&quot; | grep -i htmx | wc -l 15</code></pre>
评论 #34539022 未加载
评论 #34534347 未加载
评论 #34534493 未加载
评论 #34554701 未加载
评论 #34537661 未加载
评论 #34537207 未加载
评论 #34534243 未加载
评论 #34535181 未加载
LeonenTheDKover 2 years ago
Well that depends a bit on what the MVP needs to be.<p>Anything web related I&#x27;m probably going the Elixir&#x2F;Phoenix route. I&#x27;m no web dev, but this combination makes me actually kind of like doing web-things with how batteries included it is, and the tools it provides to really jump start a project. Then I&#x27;d host it &quot;old schoolish&quot; in a VPS or similar since that&#x27;s what I know best. Might consider being fancy and investigating if Fly is a good fit. If a DB is required I&#x27;d use SQLite unless some constraint pushes me into Postgres.<p>If we&#x27;re talking command line tool, the correct answer for me would be C# since that&#x27;s what I know best. The answer I&#x27;d want to give though is Go since I want to get deeper into it, but that&#x27;s not a good business decision.<p>Desktop application, best I&#x27;ve got in my kit is WinForms with C# and prayers that it never need run on anything but Windows. Maybe Linux with some Wine trickery, but that&#x27;s not something I&#x27;ve done before either.
评论 #34536226 未加载
评论 #34535832 未加载
评论 #34536237 未加载
sphover 2 years ago
I&#x27;m building an MVP solo.<p>Rust for the core application, Elixir for the backend, frontend, API, data layer. Javascript is pretty much non-existent, all client-side interactivity is done by LiveView.<p>Packaged into a podman container and deployed to a Hetzner dedicated server. Storage on PostgreSQL, probably the only thing I would rather not have to manage, but honestly single node is perfectly fine for an MVP. Provisioning is done with Terraform and Ansible.<p>Future expansion (pretty far away, post launch and post paying customers) is add more geo-distributed worker VPSes, talking to the central coordinator via Wireguard link.<p>Setup is pretty cheap, fast, scales really well, and it&#x27;s easy to understand. With additional services (mail, monitoring, etc.) should be less than $100&#x2F;mo all inclusive, and that should be enough for up to ~100 paying customers.<p>I have no plans of changing any part of this setup for the next decade. I&#x27;m too old to want to get golden handcuffed to turn key solutions and cloud products that just introduce complexity and become VERY expensive, and badly documented, past the demo stage.<p>Started in November, closed alpha release with users next month, launching Q2 2023.
评论 #34531409 未加载
评论 #34538586 未加载
评论 #34532214 未加载
apocalyptic0n3over 2 years ago
For an MVP, I&#x27;d choose what I&#x27;m most familiar with and can be fastest with. That would mean:<p>1. Laravel<p>2. An Ubuntu VPS in either Digital Ocean or Linode<p>3. A managed database in one of those services, likely Postgres<p>That would get me to market the quickest. I have no issues with the application being in Laravel&#x2F;PHP and after getting to market, I&#x27;d work on making the infrastructure scalable. I wouldn&#x27;t expect overnight success, so a single VPS and managed database would let me keep costs low while I pick up a few customers and then work to handle the scalability in the background (likely AWS with a combination of EC2&#x2F;ECS&#x2F;Fargate, RDS, SQS, SES, CodeDeploy, ElastiCache, etc.)
评论 #34534307 未加载
评论 #34541953 未加载
adrianthedevover 2 years ago
Nothing really beats Rails. Use something like Jumpstart (jumpstartrails.com) and Avo (<a href="https:&#x2F;&#x2F;avohq.io" rel="nofollow">https:&#x2F;&#x2F;avohq.io</a>) and you scaffold a full consumer-ready app in literally a few hours.<p>The thing that bugs me the most with Next.JS and the whole JAMStack movement is that, yeah, you get from &quot;git clone&quot; to deployed on Vercel in two minutes, but if you need to create real app features like a sturdy admin, accounts, authorization, proper asset management, CI&#x2F;CD, it takes a whole lotta time. I&#x27;m not even touching the most common app features. I&#x27;m speaking from experience, from building a Next.JS app for about a year.<p>Most Next apps out there are incomplete with the worst freaking user experience. Insert any other JS framework or hosting provider in the place of Next.JS and Vercel.<p>Of course, this is a generalisation, not all Next apps are that bad.<p>Using Rails is like a cheat-code in dev term.
评论 #34536868 未加载
评论 #34543987 未加载
justsomeuserover 2 years ago
- Server: Node.js + SQLite<p>I know JS very well, so writing HTTP handlers is quite fast.<p>Node runs on V8, which is probably the fastest runtime for dynamic code.<p>SQLite makes development easier as it’s just a file, gives you ACID.<p>- Frontend: React&#x2F;Mobx&#x2F;Tailwind SPA hosted on firebase hosting.<p>I think the concept of JSX (write your HTML with JS) is good as it gives you a real language instead of a restricted templating DSL.<p>Tailwind for the fast iteration speed.<p>Firebase hosting for the simple CLI and fast CDN.<p>- OS and hosting: Docker running on Google Container Linux<p>Docker so that the OS level dependencies of my server are defined somewhere.<p>Container Linux as it auto updates and has all the GCP logging and monitoring built in.<p>GCP for the incremental disk snapshots for simple backup of the SQLite state.<p>If I had to scale the service I would add more CPU cores and faster disk. I would also move the parts that need scaling to Go&#x2F;Rust, and design the code to make use of the cores.<p>A few principles I use when choosing tech:<p>- Avoid distributed state (network boundaries) when possible (SQLite instead of SQL server, function calls instead of micro services).<p>- Use tools for their primary purpose. No shoehorning. Issues arise when you try to use something for what it was not designed exactly for. If you have &gt;3 tools in your stack that you are shoehorning, things are more likely to break in the future.<p>- Things should still work in 10 years with minimal updates. Lindy effect. Bet on older tools if possible as they are more likely to be around and maintained.<p>- Good enough vs optimal: stop trying to find the perfect tech. Web tech is sometimes messy and imperfect. Opinion over what is right changes.
评论 #34533185 未加载
评论 #34535334 未加载
评论 #34533562 未加载
logifailover 2 years ago
&gt; What would be your stack if you are building an MVP today?<p>Many years ago a CIO told me he didn&#x27;t really care what technologies I picked for an upcoming MVP backend, as long as I was already comfortable with them and would therefore be productive quickly.<p>He also told me we would almost certainly need to rewrite everything <i>at least once</i>, so not to dwell too long on the initial stuff.<p>Build the MVP, build it quickly, get it in front of users. It just needs to work, you&#x27;re not going to get marks, or customers, for backend coding style.
评论 #34533299 未加载
评论 #34532924 未加载
评论 #34538291 未加载
thecodemonkeyover 2 years ago
I would pick whichever stack that I would be most productive in.<p>A Laravel app hosted with Laravel Vapor (AWS Lambda) with a MariaDB database. Would allow me to get up and running quickly, at low cost and without having to worry about scaling for a long time.<p>Using Tailwind and VueJS or AlpineJS for the frontend.
评论 #34531178 未加载
评论 #34534825 未加载
评论 #34534253 未加载
verisimilidudeover 2 years ago
It really depends upon the product, right?<p>Let&#x27;s assume we&#x27;re talking about a web-based business app.<p>If the MVP already requires some complex business logic, then I&#x27;d probably choose an old-school stack. I personally prefer Rails. But I&#x27;d probably pick .NET. Above all, my metro area is full of .NET people. It&#x27;d be much easier to find&#x2F;hire collaborators in .NET. I&#x27;m comfortable and productive enough with .NET on the technical level.<p>However! If I could get away with just putting up a couple Lambda functions, then that&#x27;s absolutely the path I&#x27;d choose. It&#x27;s an MVP. Let&#x27;s get this boat rowing ASAP!<p>In short, product and market influence the best technical approach.
andyjones11over 2 years ago
Elixir, Phoenix, LiveView + Postgres<p>Main reasons are:<p>- Can build entire app (with SPA-type experience on the FE) in a single codebase<p>- No need to build any HTTP APIs<p>- Periodic tasks and managing in-memory state is super easy in Elixir. Eventually you might want to stick state somewhere which survives restarts (eg redis) but for the sake of moving quickly Elixir makes this really easy<p>- Newer versions of Phoenix&#x2F;LiveView support html components so building out UIs now feels as nice as some of the tools in the FE ecosystem
评论 #34535807 未加载
评论 #34535913 未加载
aantixover 2 years ago
I built Call Stacking ( <a href="https:&#x2F;&#x2F;callstacking.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;callstacking.com&#x2F;</a> ), a modern Ruby on Rails debugger, with Jumpstart Pro and 1.5 hours a night over the course of 4 months.<p>We have four kids, host an exchange student, a new puppy. Our schedules are <i>full</i>.<p>Nothing compares to the productivity of Ruby on Rails. Especially when coupled with a high-end template like Jumpstart Pro ( <a href="https:&#x2F;&#x2F;jumpstartrails.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;jumpstartrails.com&#x2F;</a> ).
评论 #34534159 未加载
评论 #34534863 未加载
评论 #34533184 未加载
sourdesiover 2 years ago
I’ve been working on a side project that aims to provide a really simple UX to spin up full-stack web apps with CI and scalable infra by default. The idea is that you would simply enter a domain name you want to purchase and then the tool would do the following:<p>1. Purchase the domain name using AWS Route53 (perhaps you’d need to setup an IAM role for the website to access your pre existing AWS acct)<p>2. Setup frontend, API, and CDK infra repos. All in TypeScript.<p>3. Frontend react, backend Api gateway backed by lambda functions. Have a graphql endpoint that talks to an Amazon auroradb. CI for backend and frontend is defined by a CDK package that is also deployed to the AWS account that also sets up the networking and database for you.<p>4. Have a basic layer of application code for setting up user authentication and storing user data in the aurora db.<p>Basically my idea is it kinda sucks that everyone has to do all of this setup yourself if you want to start a new project. Or you have to rely on no-code tools like Squarespace etc which may not be what most engineers are looking for. Having something that can go from simply entering the domain name you want to scaffolding out a fully functional full stack web app with CI and serverless infra defined by code that can scale from day 1 seems both incredibly useful and doable.<p>Curious to hear other people’s thoughts on this!
评论 #34537208 未加载
评论 #34538642 未加载
noodleover 2 years ago
Rails on postgres with React in the frontend is my default swiss army knife. I know Rails well and it still gets stuff done fast, comparatively speaking. If the problem space I work in requires something different or solves the problem better than Rails, I&#x27;d switch.<p>Edit: post-mvp, I&#x27;d stick with Rails still unless there are specific difficulties with it. But I&#x27;ve yet to have major issues building a large Rails team&#x2F;project, including present day.
gls2roover 2 years ago
If it is a SaaS 100% Ruby on Rails<p>Why:<p>- has almost everything that I need usually in mature gems - battle tested in production<p>- speed of development
评论 #34531111 未加载
评论 #34532429 未加载
bob1029over 2 years ago
.NET 7 &amp; SQLite.<p>Because I wouldn&#x27;t need anything else.<p>Also, it could potentially be my final stack depending on the size of my business &amp; market. The current Kestrel web server implementation is extraordinarily fast (i.e. millions of requests per second fast). Vertical scaling isn&#x27;t exactly a problem now that we have 2S servers with 256 cores (and beyond).
评论 #34534057 未加载
codazodaover 2 years ago
I&#x27;m still building personal stuff in the style of &quot;1. Old schoolish&quot;.<p>I&#x27;ll use a VPS or host it on the Raspberry Pi in my bedroom[1]. I use these primarily because I&#x27;m worried about price complexity at cloud providers.<p>I use a mix of languages for personal stuff and I&#x27;m finding Go quite addictive at the moment. I rarely use a framework and base most of my MVP&#x27;s on the simple Neat CSS framework[2] I created for that purpose. I like to keep stuff light.<p>I&#x27;ve started to create some live coding style video&#x27;s[3] of myself doing these projects with a goal of setting a schedule for myself and an ultimate goal of creating a micro business.<p>1. <a href="https:&#x2F;&#x2F;joeldare.com&#x2F;private-analtyics-and-my-raspberry-pi-400" rel="nofollow">https:&#x2F;&#x2F;joeldare.com&#x2F;private-analtyics-and-my-raspberry-pi-4...</a><p>2. <a href="https:&#x2F;&#x2F;neat.joeldare.com" rel="nofollow">https:&#x2F;&#x2F;neat.joeldare.com</a><p>3. <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;codazoda">https:&#x2F;&#x2F;www.youtube.com&#x2F;codazoda</a>
RangerScienceover 2 years ago
Rails if I want a database, Sinatra if I don&#x27;t.<p>Ruby just... wants you to be happy while you&#x27;re using it. And in the long run of life, that matters.<p>Python wants to be correct, Java wants you to not make mistakes, JS is still figuring itself out, Scala wants to do hard things...<p>Ruby wants you to be happy.<p>IMO - There&#x27;s a lot of <i>very</i> worthwhile follow-on effects of that - everything from libraries (generally) being just that much easier to get going with, to lower-stress teams having better communication, to <i>debates</i> instead of <i>fights</i> (I&#x27;m looking at you, PEP572). Ruby is nice so we are nice :)
评论 #34539525 未加载
prh8over 2 years ago
I&#x27;m currently approaching MVP &#x2F; ready to pitch stage on something and these are my choices-<p>Rails 7.1 w&#x2F; Tailwind (esbuild, not import maps) Postgres DaisyUI for Tailwind UI components View Components for Ruby Nothing particularly &quot;hot&quot; but there are some newer tools<p>Post MVP, the only thing I&#x27;m looking to change is potentially replace a very heavy data analytic background job with a Crystal version of it. Will be super easy to port, and since I&#x27;m using Sidekiq, I&#x27;ll drop in Sidekiq.cr and thus won&#x27;t need to make any other system changes.<p>I&#x27;m thrilled about it, it&#x27;s taken a month to go from zero to everything working and I&#x27;m just tidying up the marketing site
评论 #34536068 未加载
mlbossover 2 years ago
Django&#x2F;Postgres&#x2F;htmx(for interactivity) . I was able to release aipaintr.com in 3 weeks working 2-3 hours daily.<p>All the new fangled frontend technologies make me dizzy :). On top of that this is my fist project in django.<p>There is a nice django starter oss project called djangox which takes care most of the integration out of the box.<p>For a new project the complexity should be on the marketing stack. Choosing a good tech stack is a distraction. Choose something that will allow you to create MVP fast and then start marketing.
评论 #34538794 未加载
cultofmetatronover 2 years ago
elixir&#x2F;phoenix is the best platform for knocking out an MVP today. Its batteries included and has a frontend system called liveview that lets you write most of your frontend using elixir too. You get built in pubsub and websockets which are important for any new kind of software product. Users demand more interactivity and phoenix lets you do it and scale from day 1. Ecto is easily the best sql database library I&#x27;ve ever worked with. Its comparable to linq only it is uses elixir macros so its just a library.<p>1. you get a lot of out of the box rails like glue jsut like rails or django but the runtime perf is way faster. you can get away without even using caching in prod for awhile<p>2. supabase is written in elixir<p>3. lambda could functiosn have their place but loc you in to a cloud provider. I can move my elixir mvps accross providers with no issue and I won&#x27;t get any surprise bills.
评论 #34531202 未加载
评论 #34532051 未加载
bittermandelover 2 years ago
1. FastAPI (Python) or Axum (Rust) for back-end, deployed on Fly.io.<p>2. Supabase for Postgres and Authentication.<p>3. Astro as a framework for front-end, deployed on Vercel, running in Hybrid mode.<p>With all of these in-place, I can extend my existing components to accommodate any needs. It scales very well in the beginning as I move very fast, and anecdotally scales very well regardless of size.<p>The only missing parts here is support for timed jobs, but that can probably be done with Fly.io machines in the future.
iainctduncanover 2 years ago
I am building one now as a single founder, with plans to never grow beyond a few people, and I&#x27;m using Clojure + Postgres (having done Python for almost 20 years!). I do technical due diligence for private equity companies for a living, and I evaluated two Clojure companies. It was amazing how much they could <i>avoid</i> in terms of problems as a small team by leveraging the JVMs concurrency and threading capabilities. No worrying about microservices, managing crazy k8 systems, or complex CQRS problems, no outgrowing pokey ORMs (a problem I have talked to way too many mid stage companies about who started on Rails or Django - huge elephant in the room there). I intend to use a mix of HTMX, some Reframe (a clojurescript reactive framework over react) and webassembly on the front end.<p>Clojure&#x27;s not the easiest thing to get into, the stability and documentation and libraries are great.
评论 #34544076 未加载
chadmckennaover 2 years ago
I&#x27;d go full stack Rails with Turbo and Postgres DB. As things grow, you can easily migrate your Rails app towards a JSON API layer and create new clients to interact with it either with your favorite JS framework or mobile app. I just love how quickly you can churn out new features in Rails -- or how easy it is to implement things like authentication or an admin panel by simply adding a gem.
marcus_holmesover 2 years ago
Go &amp; Postgres on the backend, running on a baremetal server.<p>Because this is actually capable of handling a decent workload for really cheap compared to cloud.<p>There&#x27;s a few tricky bits to do with logs and reporting, but the benefits outweigh the pain.<p>Vue on the frontend.<p>Last time I used BootstrapVue and it worked well. I&#x27;d want to re-evaluate that decision next time, have a look at some of the newcomers. I&#x27;m aware Bootstrap is now considered to be passe.<p>I really like the Vue philosophy and it pairs with Go nicely. Last time I ended up using ESBuild to actually build the Vue bundles from inside the Go server, which was interesting but I&#x27;m not sure I&#x27;d do that again.
评论 #34534881 未加载
评论 #34534982 未加载
rozenmdover 2 years ago
Build with what you know, that way you&#x27;ll be focusing on just building what your customers are asking for, and not also having to learn the technology as you build.
评论 #34531323 未加载
EMM_386over 2 years ago
I&#x27;m going to buck the (numerous) trends here and keep it simple at the same time.<p>C# REST APIs on Linux with PostgreSQL and the front-end framework of your choice. I generally stick with Angular.
评论 #34547978 未加载
评论 #34534362 未加载
Thaxllover 2 years ago
There is only one good answer to that, you should use what you already know, if you build an MVP it&#x27;s to deliver a product, it&#x27;s not meant to spend 2-3x more time to learn new tech.
评论 #34537877 未加载
评论 #34536963 未加载
评论 #34534350 未加载
评论 #34535659 未加载
评论 #34533131 未加载
aristusover 2 years ago
I&#x27;ve been writing Python for, gosh, almost 20 years now. I&#x27;ve used many frameworks but for an MVP I&#x27;d probably use good old web.py or Flask or similar.<p>Over those years I&#x27;ve come to greatly appreciate the wisdom of Gall&#x27;s Law. I always start with an absurdly simple system, make damned sure it works, and only then complicate it.
jFriedensreichover 2 years ago
- for edge functions cloudflare workers are currently the best mix of being modern and professional&#x2F;feature rich<p>- nothing beats the simplicity and power of svelte for UI<p>- netflix falcor for state and request management, because it has the 90% of features of graphQL i need but is much simpler to reason about and i can auto generate nearly all my requests from svelte without writing queries (because falcors model matches 1:1 to POJOs and has optional schemas so prototype at lighting speed and then add schemas later as needed for reliability)<p>- pouchdb&#x2F;couchdb because nothing beats this combination for sync and offline and low latency features
0xblinqover 2 years ago
1. Laravel.<p>Because:<p>- Battle proven<p>- Secure<p>- Well maintained<p>- Well documented<p>- Fully featured (a lot more than others such as Django or Rails. Jobs, auth, asset manager, etc out of the box)<p>- Doesn&#x27;t hate JavaScript, embraces it (hello Rails!).<p>- The templating system, Blade, is pretty great...you can even do components.<p>- Opinionated and not that many different ways to do the same thing, makes things more consistent<p>- Performance is good enough for 99.9% of use cases. For the other 0.01% add Octane.<p>- Great, friendly and professional community. Top high quality packages with lots of users and well maintained.<p>- Excellent frontend integration packages in case blade is not your thing: Inertia, Livewire, Hotwire, etc.<p>- Lots of people know it and like it, so easy to hire for too.<p>- Code organization makes a lot of sense to me (hello Django!)
theptipover 2 years ago
These days with Hotwire and HTMX, you can go very far with Django&#x2F;Rails (and I suppose Elixir too). Not having to write an API for your webapp to consume is huge.<p>Until you actually have reason to scale (eg you are building WhatsApp), building to optimize the productivity of your iteration cycle usually gives the best payoff for pre-PMF projects.
评论 #34534298 未加载
patrickmayover 2 years ago
This is Hacker News, so why am I the first to suggest Common Lisp (SBCL) and Hunchentoot with PostgreSQL on the server? I&#x27;d default to Vue for the frontend.
jl6over 2 years ago
I have to say, it’s pretty symptomatic of webdev to see hundreds of suggestions of solutions before having the slightest whiff of what the problem is.<p>Having said that, the answer is Python+SQLite.
30minAdayHNover 2 years ago
I still use my Rails + Postgres + Heroku with various gems like omni-auth, pagination etc. I have created a shell app that is a blank website with login mechanism and basic data. Anytime I have an idea, I can spin up a site within couple of days.<p>I was tempted about upgrading by default stack, but after lot of wise advise here, I think it&#x27;s better to stay in a stack where velocity will be high rather than wasting time in learning new things (unless that is the goal)
joshxyzover 2 years ago
For a for-profit mvp my goto answer is always &quot;the one you know&quot;, fast release matters, fast iteration, fast sales. Optimize once you got sensible sales and sensible metrics.<p>For personal projects, reactjs or vuejs or solidjs, tailwindcss, nodejs. Depends though, sometimes there are projects that demand the strengths of golang or rust.
arcturus17over 2 years ago
The ones I know are Django and Express, but I would possibly pick up .Net if I had to build a product today.<p>I’m wrapping up a Python project right now and my next personal project or two are going to be .Net apps of certain ambition (users, scheduled tasks, a few tables, maybe a sprinkle of real-time) so that I have some good foundations come gametime.<p>For the front-end I’d pick some React flavor.<p>Data in PostgreSQL.<p>Cloud provider probably AWS because it’s the devil I know but I don’t care too much.
ufmaceover 2 years ago
I&#x27;m 90% on Ruby on Rails dockerized. Meaning I would almost certainly choose that absent a very good reason to use some other backend stack. Rails because it&#x27;s highly battle tested and flexible and good enough for almost anything. Dockerized because IME setting up and maintaining a Ruby environment with up to date version on bare metal is highly painful. Docker lets me be much more consistent with both Ruby versions and the rest of the server config.<p>I&#x27;m less solid on the deployment. Could go with one of the commercial docker-y hosting systems, or a commercial K8s setup, or a hand-rolled Docker host via Ansible. I&#x27;ve done all 3, and I&#x27;m not sold on any of them being the best for everything.<p>Front-end side is more flexible depending on the type of site&#x2F;business. Normal ERB-style SSR is probably fine for a lot of things with a few sprinkles of basic JS. Would re-explore if I thought it needed a proper front-end app. React is neat, but darned if every single time I try to do a version bump on a small React app, I end up needing to rewrite half of it.
camgunzover 2 years ago
I&#x27;ve been pretty deep in backend engineering a while, but despite that I strongly try to use Hasura [0] whenever I can. IME backend engineering isn&#x27;t a differentiator, and I&#x27;ve written enough REST&#x2F;GraphQL endpoints&#x2F;tests&#x2F;blahblahblah. I think Django and Rails are amazing, but if I ever have to use them again I&#x27;ll probably sigh deep and resign myself to sadness.<p>On top it&#x27;s probably Tailwind, and if it&#x27;s just me I&#x27;d use Svelte, but if it&#x27;s more than just me I&#x27;d use React.<p>[0]: <a href="https:&#x2F;&#x2F;hasura.io" rel="nofollow">https:&#x2F;&#x2F;hasura.io</a>
happytoexplainover 2 years ago
As somebody trying to learn the web stack, reading this thread makes me a little sick to my stomach.<p>Edit: Thanks for the advice!
评论 #34532605 未加载
评论 #34532537 未加载
评论 #34532474 未加载
评论 #34533685 未加载
评论 #34532504 未加载
ducharmdevover 2 years ago
Svelte + Typescript &amp; Tailwind, .NET 7, SQLite.<p>Why? Mainly because I&#x27;m familiar with them, and would be most productive with these.<p>I&#x27;d almost like to reach for Blazor, but if it&#x27;s at all public-facing, I don&#x27;t think I can justify using Blazor at this time.
评论 #34534494 未加载
q-baseover 2 years ago
Are you building the MVP to make a product or to learn a new technology? If the former, then the stack you are most comfortable with. Let the challenges come from the product-side. If the latter, then take your pick based on the reasoning for learning something new. Be it job-opportunities, curiosity, whatever.
评论 #34530754 未加载
itpragmatikover 2 years ago
- Backend: Java - Front end: React - Persistence: MySQL and S3 - Dockerize containers for backend and front end - AWS CodeCommit for code repo - AWS CodeBuild and CodeDeploy for CI&#x2F;CD - AWS ECS Fargate
评论 #34535111 未加载
hardware2winover 2 years ago
Linux VPS + C# + ASP NET Core<p>If front needed then pure js or vue<p>Database probably sqlite or postgres if that fits the needs
评论 #34532239 未加载
quicksnapover 2 years ago
About a year ago I took off maybe 5 months to create a ephemeral voice messaging mobile app (Android + iOS)<p>Stack:<p>- React Native + Expo - Typescript - Supabase - Vercel - Some Vercel&#x2F;nextJS-ish lamda functions so I could avoid AWS (Supabase didn&#x27;t have that kind of offering yet)<p>For me, it was _very_ pleasant to work in. I was able to ship features via OTA updates from idea to live in literally minutes.. sometimes even under a minute.<p>Loved working with Supabase.
评论 #34537902 未加载
sirjazover 2 years ago
I&#x27;d go with blazor and asp.net core. Stupid fast and easy to build with c#. No javascript needed
petr25102018over 2 years ago
My first choice if the product is a good fit would be old school Django deployed to a single VPS (no docker). I am creating a public starter kit that does exactly that, including the deployment part: <a href="https:&#x2F;&#x2F;stribny.github.io&#x2F;sidewinder&#x2F;" rel="nofollow">https:&#x2F;&#x2F;stribny.github.io&#x2F;sidewinder&#x2F;</a><p>However, there are lots of use cases that would call for additional SPA (Vue&#x2F;Nuxt), or other tech. So in that case I&#x27;d add it or replace the tech stack entirely. I&#x27;d probably avoid specialized cloud services, might consider something like <a href="https:&#x2F;&#x2F;supabase.com">https:&#x2F;&#x2F;supabase.com</a> tho if the app doesn&#x27;t need a complex backend.
pc86over 2 years ago
For the database, anything that&#x27;s managed - I&#x27;m partial to SQL server just based on my work history, but Postgres is nice too. Even the expensive ones are like $100&#x2F;mo for the lowest production tiers, if you&#x27;re bootstrapping with a W2 job that&#x27;s reasonable for 6 months while you try to find some level of traction.<p>For the backend, probably default to JS or maybe TS lambdas&#x2F;function apps. Quick to write, quick to deploy, slap an API gateway over the top and you&#x27;re ready to go.<p>For the front end, for a true POC I have a lifetime&#x2F;full Creative Tim membership. So I&#x27;d just grab a dashboard and landing page template and start plugging in calls to the API gateway.
评论 #34536667 未加载
amohn9over 2 years ago
Whatever you know best and can set up quickly and easily. It&#x27;s very easy as an engineer to focus too much on the tech and not enough on the product. Don&#x27;t agonize over postgres or Dyanamo DB, Django or Spring, just use what you know to get it set up and focus on product, market, customers, sales, etc. Those will be the hard part.
mekokaover 2 years ago
My priority is to get things done. Ubuntu (DigitalOcean VPS), Django, Postgres, HTMX. I&#x27;m going full old school boring tech. No excitement. No drama. I might even go typeless if the code is of reasonably manageable size.
评论 #34533182 未加载
stcroixxover 2 years ago
Java and Postgres. For large numbers of devs, this is a very intuitive stack they have lots of experience in and can get work done super quick. Also won’t have to rewrite later because good performance. I’d stay away from depending on any vendors for anything except a VM to bring your servlet container up on.
jarek83over 2 years ago
I&#x27;d go old schoolish-ish with Rails with Turbo or Phoenix LiveView (both with PSQL) + maybe some CF Workers.<p>We see no reason to use extensive front-end as it has only downsides now - it loads longer, it exponentially balloons stack, it requires to hire front-end guys, it is not needed anymore for DOM manipulation.
throw1234651234over 2 years ago
MVP should be built on things you will use later. Which is C#&#x2F;Java&#x2F;Python, React, and Postgres SQL unless your product has unique needs outside of the traditional space (it&#x27;s a game, ML project, IoT project, mobile-only app, etc).<p>Firebase is too expensive. Only use case if you have only front end devs.<p>Dynomo&#x2F;Mongo&#x2F;Cosmos all do the same niche thing - you don&#x27;t need a no-SQL db for most apps.<p>4. Apparently a lot of YCombinator companies still use Rails. I don&#x27;t really understand why.<p>edit: I didn&#x27;t know about Supabase - thanks.
评论 #34538352 未加载
theshrike79over 2 years ago
AWS Lambda + C# or Golang with S3&#x2F;Redis&#x2F;DynamoDB backend. Maybe Aurora Postgres if you need complicated queries.<p>It&#x27;s boring but it works. It also scales as far as your wallet can handle.
quickthrower2over 2 years ago
I used NextJS and Firebase and while I disliked some of it: I would use it again because if the benefits of speed in building.<p>With this setup you can permanently host for next to nothing until you get users, do zero devops or ops, and have something that will scale up (wont be the fastest thing but it will be OK and will scale)<p>You could switch out NextJS for a static site generator too, but NextJS is pretty convenient and is a superset of a static site generator with everything wired up nicely using React.
评论 #34531045 未加载
评论 #34530781 未加载
nikiviover 2 years ago
Trying to make Solid&#x2F;ChiselStrike stack work. It has its rough edges but I am trying to iron them out so its reusable for all my projects going forward.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;learn-anything&#x2F;learn-anything">https:&#x2F;&#x2F;github.com&#x2F;learn-anything&#x2F;learn-anything</a><p>Reasoning behind the stack is that I feel productive in Solid and it&#x27;s plenty fast on first load and as SPA when fully loaded. I love the component model and JSX.<p>ChiselStrike is new to me but I was looking for something that lets me declaratively manage my schema. I checked <a href="https:&#x2F;&#x2F;entgo.io" rel="nofollow">https:&#x2F;&#x2F;entgo.io</a> (it produced too many Go files to my liking), also Prisma (<a href="https:&#x2F;&#x2F;www.prisma.io" rel="nofollow">https:&#x2F;&#x2F;www.prisma.io</a>), found it bit complex to get started with.<p>I also checked <a href="https:&#x2F;&#x2F;www.edgedb.com" rel="nofollow">https:&#x2F;&#x2F;www.edgedb.com</a> and it&#x27;s nice but with ChiselStrike I can deploy it with LibSQL (fork of SQLite) and replicate it so responses should be plenty fast and I can build on top more easily.<p>For native apps will use SwiftUI composable architecture when it comes to it. React Native code sharing seems nice but Solid doesn&#x27;t have a React Native alternative yet sadly.
ajjenkinsover 2 years ago
I agree with that too comments that you should avoid having a backend at all for your MVP if you can avoid it (just make a static hosted website with HTML, CSS, and minimal JS).<p>But since you asked about backends specifically, this is what I would use. I would use clerk.dev for authentication, Hasura for the CRUD API, neon.tech for the database, S3 for static files (images), and AWS Lambda for any extra functionality you can’t accomplish with Hasura natively (but call them through Hasura).<p>Personally, I like using GraphQL because I can just focus on my data model and not think about what endpoints I need to make. But there’s definitely a learning curve, so sticking with a REST API is probably better for most people.<p>As an alternative, I would also consider Supabase like you mentioned. It sounds cool, but I’m already comfortable with Hasura so that’s what I go to first.<p>Update: For a website, I would actually use Remix with Clerk for auth and Prisma&#x2F;SQLite for data stuff. That’s one of their premade starter stacks. I made one prototype with Remix and had a lot of fun using it. It’s easy to learn and will give you a high performance full stack app. My original answer is what I would use if you’re making a mobile app.
blascsiover 2 years ago
I&#x27;ve been trying to put together a solo project, that might be worth launching a bit later. My stack in general is:<p>Elixir for the backend. Reasons for it:<p>- Elixir is designed for reliability, so since I want to keep the app alive as much as I can by myself, it seems like a great fit.<p>- It also has excellent integrations with Postgres (my choice of DB) with Ecto.<p>- I generally skipped Phoenix, as I&#x27;m just using Elixir to create my API.<p>- Absinthe provides amazing support to create GraphQL API from scratch.<p>Frontend will be React probably with Relay.<p>- I&#x27;ve been using React at my job for years with GraphQL and I&#x27;m pretty fond of it.<p>- I&#x27;ve been planning on investingating Mobx, as I&#x27;ve never used it but heard good things about performance there. I&#x27;m not sure if it&#x27;s going to be worth using it with GraphQL<p>- Relay has quite a lot of boilerplate, but I found it good enough for what I&#x27;m doing, and I liked the performance. Also it&#x27;s fairly easy to integrate with Absinthe.<p>- Generally since this project is not made to be a start up or a business first, I want to experiment on the front-end on how I could reach the best performance with these tools at hand.<p>- I plan on using TS with the GraphQL queries mostly generated from the schema.<p>For deployment I plan on using a VPS probably, though I&#x27;m way far from having to choose that.
评论 #34534081 未加载
评论 #34534826 未加载
turadgover 2 years ago
I&#x27;m surprised nobody has mentioned <a href="https:&#x2F;&#x2F;redwoodjs.com" rel="nofollow">https:&#x2F;&#x2F;redwoodjs.com</a><p>Here&#x27;s why I&#x27;d pick it:<p>1. One language for the whole stack. It&#x27;s an MVP so the front and back are both changing fast, with changes made by the same person, and you don&#x27;t want to context switch all the time.<p>1a. Javascript as that language because it&#x27;s the most flexible. And with TypeScript you can gradually opt into type constraints where they help you.<p>2. An opinionated full stack like Ruby on Rails that integrates all the pieces I need to ship. When you assemble yourself, even small version bumps or outdated tutorials can send you down a rabbit hole, stealing time from testing PMF. You want someone to validate a combination in which all the pieces work together smoothly.<p>2a. Redwood.js closest to be being the Ruby on Rails of JavaScript. I&#x27;ve toyed with it before and got up and running quickly. Its opinions took a lot of unimportant decisions out of my hands and let me focus on what I was trying to produce. I didn&#x27;t get so far as to confirm this but it also seems to make it easy to gradually drop the scaffolding if the opinions and simplifications ever get in your way.
评论 #34535036 未加载
评论 #34535030 未加载
lummmover 2 years ago
I think I&#x27;d have to say NextJS with SQLite. Every DB table would just be &#x27;id&#x27; and &#x27;data&#x27;, where &#x27;data&#x27; is JSON-encoded and the schema is only enforced in code. This lets you write a 30-line ORM. Foreign-key relationships are just modelled as lists. If speed is the major concern, I find this the fastest way to build. You can bring structure to the DB as things are nailed down.
评论 #34534957 未加载
zeendoover 2 years ago
Frontend - Elm + Tailwind (possibly Miso, it has been a while since I tried and dismissed it)<p>Backend - Haskell, Postgres<p>Infra - My most recent experience is with AWS and ECS but I&#x27;d likely try out Nomad and HAProxy.<p>Pretty much any other moving parts would depend on the MVP itself.
CuriouslyCover 2 years ago
I&#x27;d use Postgres for the data layer, I&#x27;d build the service layer around OpenFAAS (using faasd) and Node&#x2F;Typescript functions, and for the client I&#x27;d probably go with React&#x2F;Next (though Svelte is starting to look pretty attractive). For basic CRUD functions I would probably use Postgrest.<p>I&#x27;d stand it up on a VPS initially, using ansible scripts to make switching deployment targets to AWS easy.
zxexzover 2 years ago
Probably React for the frontend, Postgres for the database, PostgREST to serve up a REST API, Nginx for routing. Any services or tasks not done in the DB directly written in one of Python 3, Kotlin, or Go. Pretty much any generic search task including freetext is easy in Postgres, but if I need more I’d throw in Elasticsearch.<p>Building an MVP should be done with the tools you’re most comfortable with!
reviconover 2 years ago
Front end: Is SEO relevant? YES: AWS Lambda generating server rendered HTML behind API Gateway. NO: Vanilla React.JS app hosted on S3<p>Back End: AWS Lambda behind API Gateway<p>Database: AWS DynamoDB<p>This stack will reduce down to <i>zero</i> usage costs when there is no traffic and will scale up to much more than I will possibly need for anything resembling an MVP with no interference required by me.
评论 #34537627 未加载
ericskiffover 2 years ago
Definitely still Rails for me, both for personal projects and for work. There are so many hidden requirements in SaaS products that have been baked into Rails and popular rubygems, getting to build on top of all that work is wonderful. It also makes coming back to a project to update it in a few months&#x2F;years standard and simple.<p>If you haven&#x27;t played around with Rails for a bit, things have gotten simpler in the past few years. Doing a quick demo&#x2F;todo app on Rails 7 is delightful. With hotwire&#x2F;stimulus, you get frontend performance that feels like React, but you&#x27;re writing simple HTML&#x2F;ERB templates and partials and some light JS controllers. It&#x27;s quite nice.<p>Scaling those apps to lots of complexity is still an interesting challenge, and we&#x27;re leaning towards React frontends on top of Rails APIs when the frontend is complex, but if you&#x27;re building a standard CRUD app, Hotwire&#x2F;Stimulus just lets you motor through the build and spend your time&#x2F;money on user-facing value.
评论 #34554145 未加载
rockyjover 2 years ago
T3 (<a href="https:&#x2F;&#x2F;create.t3.gg&#x2F;" rel="nofollow">https:&#x2F;&#x2F;create.t3.gg&#x2F;</a>) + Postgres (RDS). Hosted on AWS, Node Lambdas for async &#x2F; background work.
ilakshover 2 years ago
I mean for me it comes down to what I am most familiar with. I am old so that means things like Digital Ocean and Express.js with plain old JavaScript. I guess I should not admit that publicly. Or privately.<p>But also if I was slightly less old I think I would be heavily into Python at this point especially as far as the ability to easily leverage data and AI tools and libraries.<p>But again, my suggestion is go with what you are familiar with. And if you are less old and are excited about a new language or framework, that seems perfectly valid to me. The hard part about programming is staying motivated. So if new stuff helps with that then great. I<p>One more take is that you should start by defining the problem in detail before you make up your mind on the architecture and technologies that you will employ. If there is a particular technology that is well suited or has a ready-made solution, you should consider that.
kentbrewover 2 years ago
Given that you are going to throw away every single bit of this code -- yes, you will, and yes, your investors should know about it in advance, and yes, you should set hard numbers for when it&#x27;s going to happen -- you should build your MVP using whatever toolset will allow you to innovate the fastest while keeping the site up, safe, and secure.<p>Agreeing with what has already been said about static HTML&#x2F;CSS&#x2F;JS on GitHub Pages with AWS buckets, but if Django or Rails works best for you, go with it.<p>Unless this stack is works-best-for-you, beware launching on React, Typescript, Next.js, or Vercel. That&#x27;s what you&#x27;re going to use for the Real Version, when you have money to hire some Real Engineers who are okay with the level of complexity. Don&#x27;t incur that tech debt before you absolutely must.
aloukissasover 2 years ago
Firebase (or maybe Supabase) - because I love a &quot;backend-less&quot; stack. It just take less effort (no need to write lambdas). Full solution out of the box (DB, auth, storage). If I ever reach the limit of this stack, I probably have insane PMF, so I&#x27;ll deal with it then (YAGNI).
kerafover 2 years ago
I&#x27;d probably go with NextJS and Pocketbase[0]. I like to start with everything on a single instance&#x2F;machine, cheaper and less overhead, allows me to focus more on building things rather than ops.<p>[0] <a href="https:&#x2F;&#x2F;pocketbase.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;pocketbase.io&#x2F;</a>
conductrover 2 years ago
I know this is not really in the spirit of the question, as asked. But an important consideration after having spent countless hours over many years building “MVPs” that ultimately go nowhere.<p>Hire a PHP&#x2F;LAMP dev for $10&#x2F;hour or less (or whatever is cheap and good enough) + something like digital ocean. Communicate effectively the features and milestones and project manage but mainly Spend my time on growth<p>I’m at a point where I can’t fathom writing a ton of code myself when I am trying to start a business. Programming is a hobby that I enjoy, but my time as an entrepreneur is more valuable elsewhere. Most likely I’ll find the business’s largest hurdle earlier and, it’s probably not a technical one. Then I can decide if it’s something I want to pursue or pivot to something else.
评论 #34536172 未加载
mmcclureover 2 years ago
Old schoolish and Phoenix. I haven&#x27;t seen any of the new (very cool!) projects in the JAMStack-y space really address things like migrations or even the data layer at all outside of &quot;go use something else.&quot;<p>Ecto is the best ORM-ok-fine-it&#x27;s-not-an-ORM I&#x27;ve ever used and Phoenix is a lovely framework that borrowed a ton from the success of Rails. Deployment used to be a bit of an achilles heal (in that it was uncharacteristically difficult compared to everything else about using it), but that&#x27;s gotten _so_ much better in recent years. Even more simple if you just use something like Fly.io, which has incredible first-class support for Elixir&#x2F;Phoenix.
hedgehog0over 2 years ago
I was wondering is there anyone uses Clojure or other Lisp languages for these kinds of things…
评论 #34532992 未加载
Dowwieover 2 years ago
The question depends on context that hasn&#x27;t been provided. Are you building it alone? Are you creating services where performance matters? What type of volume are you anticipating within the first 6 months that the MVP is running in production?<p>It helps to use the best language that your entire team knows. It severely limits your startup if the team is learning a new language together. Align tech decisions with the capabilities of the team, unless the common denominator is Perl. If the team each has at least 5 years of development&#x2F;engineer experience and you&#x27;re going to need to invest in a common language, give Elixir and Phoenix Liveview a try.
mijustinover 2 years ago
I would still choose Rails or Laravel.<p>When we were building the MVP for Transistor.fm, we chose Rails because it&#x27;s what my co-founder knew the best.<p>These old-school web frameworks are mature, and still have a big ecosystem (community, resources, etc). Beyond Rails, we used AWS with Postgres, Redis, nginx&#x2F;puma, and sidekiq for background jobs.<p>With any business (especially early stage), you only make progress when stuff gets built, deployed, and into the hands of customers. Remove anything that slows you down (like learning a new stack).<p>When we were in the MVP stage we recorded this podcast and went into more depth: <a href="https:&#x2F;&#x2F;saas.transistor.fm&#x2F;episodes&#x2F;nerd-stuff-our-web-app-tech-stack" rel="nofollow">https:&#x2F;&#x2F;saas.transistor.fm&#x2F;episodes&#x2F;nerd-stuff-our-web-app-t...</a>
pocket_cheeseover 2 years ago
For an MVP I&#x27;m building, I&#x27;m using retool as the frontend, Flask hosted on appengine as the backend, cloud functions for async task execution, and a managed CloudSql postgres instance for the data layer.<p>I suck at UI&#x2F;UX design and don&#x27;t want to write a bunch of JS for async webapp stuff, so retool is a force multiplier there and would highly recommend. I Don&#x27;t want to manage any infra, so appengine handles that for me. After getting everything setup with terraform in a day or so, I spend all of my time developing core functionality and 0 time managing servers or getting a UI to do what I want it to do.<p>Total cost to host is &lt; $100
codeptualizeover 2 years ago
I&#x27;m currently building an mvp using Supabase &amp; Next.js (FE &amp; api routes). I can definitely recommend.<p>My main reason is speed; you can move very fast, and lots of the &quot;boilerplate&quot; stuff is handled out of the box.<p>I do keep post MVP in mind, it should be pretty easy to move parts to different systems if necessary. The most radical exit would be moving the Postgres DB elsewhere, or even self hosting Supabase.<p>It&#x27;s good that it&#x27;s possible, but I plan to use this stack as long as possible as it&#x27;s great, and I have zero interest in managing and maintaining infrastructure.<p>As with everything; it depends. On your product and on your skills&#x2F;expertise.
johnstoreyover 2 years ago
What a timely question! A couple of friends and I have been wrestling with the question, and coming from the enterprise world, have been retooling for producing code over producing production code for the MVP. We currently are looking working with<p>* Flutter, with FlutterFlow for UI * Pocketbase for quick, extendable back end code and basic BaaS * Heavier emphasis on market validation and strategy than technology<p>We set a goal that the MVP is barely a mock-up. The other understanding we have is that the backend would have to be 100% rebuilt if &#x2F; when there is traction, but we were able to get to work in one web meeting.
评论 #34540006 未加载
leolitstrong42over 2 years ago
I&#x27;d go for a Flask back-end connected with Firebase for user authentication, storage and hosting.<p>Developing in python for me is just much faster to get to a working prototype. Flask is super simple to use, and I find it great to implement HTTP REST APIs for the back-end of my MVP.<p>With Firebase you can deploy containers in the cloud and you don&#x27;t pay until you reach a certain threshold of monthly requests.<p>In terms of my development environment I&#x27;d definitely use docker to containerize my environment and make it easier to collaborate with others. If I was making a bigger scale MVP with multiple collaborators and sensitive source code, I&#x27;d opt for a cloud based CDE (containerized development environment) with monitoring and security features, such as the one proposed by strong network.
stempyover 2 years ago
I could have a .NET 7 stack up in a few days deployed (well 1 day for basics), monolith, or multiple microservices, with Sql Server database, along with MongoDb, and JWT Authentication. React or blazor frontend.<p>With clean conventions to start with.<p>From the get go, performance would be great, and it would be fairly easy to scale with azure container apps.<p>Than another week or so to polish things up. Most time from than would be U.I based.....<p>Just point of reference, a couple of weeks ago created .NET 7 Auth service creating JWT auth from AD B2C, along with custom X509 Cert in 2 days complete with docker image build using Azure KeyVault, another day to get build&#x2F;deploy pipelines setup, plugging in Azure APIM.<p>It&#x27;s really incredibly simple and fast to do now.
logicalmonsterover 2 years ago
You can build basically any MVP in almost any programming language and platform.<p>That said, anybody who gives an answer without knowing what they&#x27;re building first and knowing the tradeoffs involved IMO isn&#x27;t doing things right.
评论 #34542613 未加载
freefranciscoover 2 years ago
I would use IHP, it&#x27;s basically Haskell On Rails using nix and Postgres, and it all works out of the box. You can autogenerate code for controllers, schema, views, etc. and have a running app in 15 minutes. You can then hack on the code and with ghcid you can always make sure your code is correct as you make changes. I used it for a project recently and I found it much better than rails, python, elixir, and node for this purpose. I am not even considering Java or C because those are not for MVPs.
brotchieover 2 years ago
If it&#x27;s a proper MVP that needs code and can&#x27;t be validated via concierge or other no-code approach:<p><pre><code> - React Vite Typescript (React Query and Hooks*) - Python Flask Backend - SQLite or just fsyncing a JSON file to disk on each write (it&#x27;s an MVP!) </code></pre> Backend API just returning JSON with typescript interface describing response contents.<p>Don&#x27;t need anything more fancy than this.<p>* Tried Redux &#x2F; Redux Toolkit enough to realize for a MVP it&#x27;s sufficient to just hack stat with hooks and contexts, reducers are too much b
oscargullbergover 2 years ago
Depends a bit on the system, but for a fairly simple webapp: hasura, sveltekit, firebase auth and some lambdas
noveltyaccountover 2 years ago
Some of my assumptions - meet customers where they are (need apps &amp; web), be able to iterate quickly, minimize tech skills required, prefer easy-to-hire skills, worse is better (imperfect decisions are necessary to go fast &amp; get customer feedback), prefer batteries-included frameworks.<p>Given my background that means .NET Maui Blazor (aka Maui Hybrid). You need two skills: C# and HTML (Razor). One language on the front end and back end. Compiles to native code on iOS, Android, Mac, and PC; WebAssembly in the browser. On the native apps the HTML UI is interpreted, but the rest of the code is in-process and native.<p>Since I want to use .NET, that means the best cloud support is Azure. Azure Functions for the API - serverless for frugal startup costs. For data store, Cosmos DB in NoSQL mode as a JSON documentDB - again, serverless for frugal startup costs.<p>I&#x27;m also very intrigued with using Go and Flutter instead of MAUI, but given my background that means a learning curve instead of being productive with a language I know well. I think C# and HTML are easier (more abundant) skills to hire, but I suspect Go and Flutter would attract more open-source-aware developers.<p>I&#x27;m not sure about a front-end HTML framework to go with Blazor. It ships with Bootstrap, which is probably file. I&#x27;m curious about Bulma which looks simpler and Material 3.0 for Web which is in alpha and marching toward 1.0 release soon.
michilehrover 2 years ago
I would use a full stack framework so I do not have the overhead of creating API endpoints.<p>I would use Laravel with Livewire.
评论 #34531819 未加载
hot_townover 2 years ago
4. Wasp (<a href="https:&#x2F;&#x2F;wasp-lang.dev">https:&#x2F;&#x2F;wasp-lang.dev</a>) because it&#x27;s the fastest way to build a full-stack React + NodeJS web app. You can build a prod ready proof of concept in a couple hours. E.g. Google OAuth2 is configurable in ~ 10 lines of code --&gt; here&#x27;s proof: <a href="https:&#x2F;&#x2F;youtube.com&#x2F;shorts&#x2F;-daNTYiUC64?feature=share">https:&#x2F;&#x2F;youtube.com&#x2F;shorts&#x2F;-daNTYiUC64?feature=share</a><p>(disclaimer: I&#x27;m the guy in the Video :):):):):)
eandreover 2 years ago
This is one of the core use cases where Encore [1] really shines. It helps you get up and running really quickly by natively supporting common cloud infrastructure components (databases, Pub&#x2F;Sub, caching, cron jobs, secrets management, etc), and a simple low-boilerplate way of defining APIs.<p>It automatically provides API docs, architecture diagrams, and infrastructure provisioning, based on static analysis of your code base.<p>Disclaimer: I&#x27;m one of the founders.<p>[1] <a href="https:&#x2F;&#x2F;encore.dev" rel="nofollow">https:&#x2F;&#x2F;encore.dev</a>
itslennysfaultover 2 years ago
I really like NestJS for backend. It has great tooling and generators. It&#x27;s super fast to create a REST or GraphQL API. Adding WebSockets is a breeze if you need them. It uses TypeORM which is rock solid. Also, it includes unit and e2e tests and linting out of the box. Also, if you&#x27;re doing your frontend in TypeScript it&#x27;s trivial to share interfaces for &quot;type safety&quot; across the wire.<p><a href="https:&#x2F;&#x2F;nestjs.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;nestjs.com&#x2F;</a>
brmover 2 years ago
Php&#x2F;MySQL&#x2F;html&#x2F;css still the easiest simplest way to get anything out the front door
eloffover 2 years ago
I’m doing one right now.<p>Using Rust, Diesel(Orm), Postgres, compiled jinja2 templates (Askama), and a smattering of JavaScript with AlpineJS, and Tailwind. I have 100 loc JavaScript that makes it easy to replace only parts of the page via Ajax calls.<p>Really simple stack, really lightweight, a joy to debug, and runs instantly. The delay on my dev laptop is below 10ms, it’s undetectable.<p>So much better than React and Python that I use at work in nearly any dimension. I hope the mvp works out and I can quit that job one day.
fzaninottoover 2 years ago
If you&#x27;re building a B2B app:<p>- Supabase on the backend (REST APIs are a solved problem, no need to spend a single hour on it)<p>- Auth0 for authentication (too risky to manage authentication manually)<p>- react + react-admin SPA on the frontend (does 80% of the job for B2B apps)<p>- lambda functions (for business logic that can&#x27;t be exposed on the frontend)<p>API-centric SPAs are such a time saver... when you don&#x27;t have to build the API, and Supabase covers it.<p>For a B2C app, you must render server-side. I&#x27;d go with:<p>- Postgres - Next.js or Remix - Prisma
评论 #34536883 未加载
评论 #34537638 未加载
FlyingSnakeover 2 years ago
For an MVP the most important thing is to get the product ready, have early feedback and then iterate based on the response.<p>After my extensive framework shopping of PHP&#x2F;Laravel, Phoenix, Supabase, Directus, Kotlin+SpringBoot, I settled for Django+HTMX+AlpineJS for my side project. I could create a working MVP in a week and within 1 month I had most features up and running.<p>I plan to host it on Oracle cloud (free tier) and have not seen any issues with it so far in the test runs.
评论 #34534140 未加载
gregorsover 2 years ago
Phoenix&#x2F;Elixir&#x2F;Postgres Vue&#x2F;Liveview<p>Phoenix support for websockets is really good right out of the box and for small&#x2F;medium complexity UI&#x27;s Liveview is light years faster in dev time than a spa. Liveview can take you far, but heavy UI work I still default to Vue.<p>Elixir can take some time to wrap your head around since it&#x27;s a major shift from more mainstream programming languages, but I think there&#x27;s a ton of fun in that.
nikanjover 2 years ago
LAMP because I&#x27;d like to focus on building features, not wrestling with the build tooling to get the dependencies of my dependencies dependencies compiling.
jspaetzelover 2 years ago
A project I started about a year ago is PHP&#x2F;Symfony&#x2F;MySQL&#x2F;React. It&#x27;ll run on any modern lamp server so I&#x27;ve put it on a shared host I already had running for another customer.<p>I&#x27;m going to deploy it on aws fargate sometime in the next 6 months or so, that should get me to scale.<p>The database I&#x27;m going to migrate to a single tiny ec2 instance until I need more resources, then it&#x27;ll probably go to RDS or PlanetScale.
alkonautover 2 years ago
You mean specifically for products that involve the internet&#x2F;web and is &quot;full stack&quot;? I&#x27;m not very familiar with the trends there but I do know I&#x27;d likely use a whole different toolset if I was only building a service without web frontend than if it had a web frontend. And whether or not it involves a database of some kind (and what kind) also heavily influences the choice of tools and platforms.
vinlockover 2 years ago
I&#x27;m surprised &quot;Next with Postgres&quot; is under &quot;Old School&quot; here.<p>Building an MVP to me means you are building a Proof of Concept (POC) for investors to see the value in your product. Using something that has a proven and lengthy track record and plethora of industry resources in the market feels like the right approach.<p>Depends on resources too... If you have separate resources for FE and BE. Probably still go Rails for BE. The upsides to Rails is productivity and job market. I&#x27;d track metrics that would help you keep an eye on application performance where it matters and iterate on those areas post-MVP.<p>For the FE I&#x27;d go NextJS... You can use it as just React or actually use all of the pieces to it where necessary. You can host it on a server or toss it on Vercel or Netlify to have less worries until you outgrow those (if ever).<p>For the database I&#x27;d probably use something that works well with Prisma JS for productivity, PostgreSQL or MySQL.<p>I&#x27;d stick to TypeScript for that productivity too. The iteration speed is a brain dead reason to use it.<p>If you can make the BE and FE with the same team and use all TypeScript... I&#x27;d use NextJS + Prisma JS + tRPC. tRPC would give a huge productivity boost because of its TS integration into your project. You just need someone senior enough to establish guard rails like the boilerplate, linter, and other guard rails to keep more junior developers on track and productive.<p>I feel that the combination of these frameworks will give you the right mix of quality and iteration speed without sacrificing one or the other. Also, great hire-ability. Though, all of this depends on if you actually need a DB and a backend, or even a frontend for what could suffice as an MVP.<p>Just some thoughts...
gbraadover 2 years ago
Unclear description of requirements. Even as a green field project you base these on the environment it needs to operate in, the team that will work on it, and&#x2F;or based on requirements of the actual functionality. And if for your own project, base it on something you know. Learning a new stack and developing an mvp does not go well. You would be struggling more to make it work than making progress.
olavover 2 years ago
<a href="https:&#x2F;&#x2F;pocketbase.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;pocketbase.io&#x2F;</a> Simple, performant, batteries included
评论 #34538249 未加载
tdy721over 2 years ago
Fresh, with Strapi to help bootstrap a backend, but eventually migrating all to Deno when the budgets permit.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;Hyprtxt&#x2F;fresh-strapi.deno.dev">https:&#x2F;&#x2F;github.com&#x2F;Hyprtxt&#x2F;fresh-strapi.deno.dev</a><p>This site uses the framework, but not Strapi: <a href="https:&#x2F;&#x2F;videopoker.academy" rel="nofollow">https:&#x2F;&#x2F;videopoker.academy</a>
Taekover 2 years ago
Plain js on the frontend. Complex logic handled in rust-wasm. Backed handled in Rust using the Actix Web http server, using websockets, proxied through a very basic nginx instance with TLS.<p>My own servers for the entire cloud, maybe with CloudFlare as a CDN.<p>Avoid anything else as much as possible. If you need AI&#x2F;ML, you&#x27;re going to have to pull in some difficult extra stuff, so make sure the value is there.<p>Owing both to the unreasonableness of the modern javascript stack (node&#x2F;eslint&#x2F;jest&#x2F;react&#x2F;typescript&#x2F;webpack) and also to the considerable improvement of vanilla js over the past 10 years, I really don&#x27;t feel like all the extra frameworks are worth the overhead and dependency risk on the frontend. Vanilla js is really good these days! And when you need a boost, rust wasm is also really good.<p>I&#x27;ve found that it&#x27;s a lot faster - and also a lot safer! - to build in vanilla js than I ever would have expected. Typescript still adds value, but imo not nearly enough value to earn a place in the stack.
评论 #34539949 未加载
ibejohn818over 2 years ago
It depends .. (frameworks&#x2F;libs&#x2F;langs) for enterprise stuff at work, we have our tech stack worked out, for freelance, it&#x27;ll be what the customer wants or what I&#x27;d feel would be most maintainable. For infra, for both I&#x27;d use docker to run my apps and supporting services ... I&#x27;ve been really into the hashicorp stack, nomad + consul .. docker gives you a solid dev env and portability when going production
ryanwaggonerover 2 years ago
Laravel. I don’t have time to fuck around with whatever the latest hotness is.
euphetarover 2 years ago
Assuming web app.<p>1. Python.<p>2. Flask. Pure server-rendered HTML, no fancy frontend. Avoid JS as long as I can, just use jinja templates. If my app is not going to work with good old HTML and CSS chances are it&#x27;s not going to work at all.<p>3. Classless CSS framework. I like this: <a href="https:&#x2F;&#x2F;watercss.kognise.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;watercss.kognise.dev&#x2F;</a>.<p>4. Sqlite3 or Postgres. Prefer postgres because with docker it&#x27;s 5 minutes to set up. I use SQLAlchemy from the start because it makes life easier. If you ever deploy and worry about real data you add alembic for migrations.<p>5. One docker compose for everything.<p>6. Cheap VPS for like $3 per month.<p>That&#x27;s it. I would like to upgrade my MVP stack, but it&#x27;s battle-tested and it works well. After the 9 to 5 I only have like 3 brain cells alive so I need to get stuff done as fast as possible, which means using what I know.<p>One thing I often reinvent and reimplement is OAuth. Definitely &quot;Sign in with google&quot; is the best way to add auth to your app, but it&#x27;s such a pain to set up.
necatiozmenover 2 years ago
If I were building an MVP today, my stack would likely include a web framework such as Django or Ruby on Rails for the backend, a React framework such as refine for the frontend, and a database such as PostgreSQL for data storage.<p>refine is React based for building CRUD app rapidly. Repo: <a href="https:&#x2F;&#x2F;github.com&#x2F;refinedev&#x2F;refine">https:&#x2F;&#x2F;github.com&#x2F;refinedev&#x2F;refine</a> With refine You can build admin panel, dashboard, internal tolls, and any CRUD app rapidly<p>It eliminates the repetitive tasks demanded by CRUD operations and provides solutions for critical parts like authentication, access control, routing, networking, state management, and i18n.<p>It also has connectors for 15+ backend services including REST API, GraphQL, NestJs CRUD, Airtable, Strapi, Strapi v4, Strapi GraphQL, Supabase, Hasura, Nhost, Appwrite, Firebase.. So you can save a lot of time from development time.
xupybdover 2 years ago
It&#x27;s obscure and different but I&#x27;d be using <a href="https:&#x2F;&#x2F;safe-stack.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;safe-stack.github.io&#x2F;</a> I&#x27;ve never felt as confident about my code as I am with F#. It takes a little getting used to and some custom widgets are awkward to get working but I love the stack.
评论 #34548219 未加载
dirtybirdnjover 2 years ago
I used to be into CakePHP and then Laravel, I liked the monolith style architecture where the template, API, and user interface all live together.<p>I&#x27;ve done backend separated from frontend and while its nice it can be a pain to manage on your own, which is usually what your doing at MVP time.<p>Now I&#x27;m more focused on using stuff like Strapi or rolling my own Hapijs server when needed and having a JAMstack frontend to interact with it.<p>Next.js has been a breath of fresh air to bridge the conceptual gap between what I was doing in Laravel (PHP) and now im doing in Next.<p>JAMStack and serverless functions are awesome because you don&#x27;t need to maintain servers anymore. Most sites can be primarily static especially when you are prototyping... the data that comes from an API can be mocked for demos.<p>SQLite for DB development without the internet. Being able to run tests or do other stuff thats DB destructive without connecting to anything. No local server, no nothing. Just you and your flat file. Bliss.
barakplasmaover 2 years ago
Directus connected to a Postgres database<p>Comes with a built-in low-config UI&#x2F;API for CRUD on the database, and easily extendable with Vue.js and Express endpoints.<p>Additionally, should the need arise for something more custom later on, all your data is in Postgres rather than a backend as a service<p><a href="https:&#x2F;&#x2F;directus.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;directus.io&#x2F;</a>
评论 #34531139 未加载
seifsekalalaover 2 years ago
*Quick answer:* MERN.<p>*Explanation:* &gt;&gt; I need to really push myself to finish my last YouTube MERN-stack tutorial. &gt;&gt; I will then be able to competently contribute to the planning and implementation of a real (full-stack-web, and mobile-native) app. —-&gt;&gt;&gt; Purpose of app: Higher-education advisory services for N.-American colleges, as well as international students and their sponsors.
zkirillover 2 years ago
python -m http.server 9000<p>And Bootstrap, if I&#x27;m feeling generous.<p>When you&#x27;re trying to validate a product, the last thing you should be spending your time on is fiddling with anything more complicated than this.
yusufnbover 2 years ago
So many good answers, and interesting to read the overall technology landscape. The technology debates can be endless, though. I think it&#x27;s good to consider a few non-technical aspects as well for selecting your stack -<p>1. Is this stack popular among recent similar successful products?<p>2. What technology will make it easier to find relevant talent?<p>3. Does your stack allow for rapidly changing code along with a rapidly changing team? This is important, especially in the early stages of development.<p>4. Are you trying to do things the Google way? Facebook might never exist had they started with C++ instead of PHP.<p>5. Do you want to be on the cutting edge for the sake of being on the cutting edge?<p>I elaborated on this a bit in my blog here if interested - <a href="https:&#x2F;&#x2F;sleeksky.com&#x2F;blog&#x2F;technology-stack" rel="nofollow">https:&#x2F;&#x2F;sleeksky.com&#x2F;blog&#x2F;technology-stack</a>
vernon99over 2 years ago
I may be an outlier here. But I strongly prefer not to optimize for speed when building an MVP. Because it just _never_ (at least in my experience) gets a chance to be fully rewritten into something better. The idea of an MVP is to prove the market need and if it’s proven, the wheels are already turning and it’s impossible to resist the pull.<p>So you end up with a bunch of tech debt or just inefficient stack that poisons your codebase from day 1. I think the initial gain is just not worth it in the grand scheme of things.<p>So we always are trying to use the best possible production stack. Not overengineer - just use the best solution for the long run. Long term gains beat marginal short term benefits.<p>Currently our stack for a pretty small eng team is Go, React, GQL and Flutter for mobile. Works pretty well for us.<p>But as I said, I could be an outlier here :)
mindcrimeover 2 years ago
For a web-app of some sort?<p>Host: VPS on OVH<p>Database: Postgresql<p>Web layer (server-side): Grails<p>Web layer (client-side): Javascript - probably vanilla, maybe React. Bootstrap.<p>Auth &#x2F; SSO: Apereo CAS<p>Deployment automation: Ansible<p>CI&#x2F;CD - Jenkins<p>Issue tracking: Bugzilla<p>IDE: Eclipse<p>DNS: Route 53<p>If I felt the need for dedicated micro-services for the backend, I&#x27;d use Java and Spring Boot.<p>If needed, possibly Apache HTTPD as a reverse proxy.<p>For a lot of stuff that might fall under &quot;other&quot;, like sending email, or text messaging, yadda yadda, I&#x27;d use Amazon services: SES, SNS, etc.<p>For an MVP I&#x27;m not sure if I&#x27;d even bother building Docker images or not. But if&#x2F;when I had to scale up, then I&#x27;d definitely package as images and deploy using Docker or K8S. At <i>some</i> point if the thing got traction and needed to scale Big Time™ then I&#x27;d probably go to Amazon EKS or Azure AKS.<p>If I needed a mobile app... well, I&#x27;m not really a mobile developer, but I&#x27;ve been picking at learning Flutter. So probably would continue with that.
notsrgover 2 years ago
T3 stack - Typescript, TRPC and Tailwind (uses NextJS, Prisma, etc). This is the closest in the JS&#x2F;TS world to something like Django and end-to-end typesafety can enable you to go blazingly fast. Copilot became pretty good at autogenerating my queries&#x2F;mutations for me too which was nice.
评论 #34534356 未加载
qwerty456127over 2 years ago
I would focus on functional languages. They don&#x27;t change much nor often and guarantee (in 99% cases) everything is going to work reliably as soon as it builds successfully. The less people you have the more you need functional languages. Elm, Elixir, F#, Scala, Clojure, Kotlin etc.
评论 #34561214 未加载
seagull-actionover 2 years ago
I&#x27;ve had an unparalleled experience in getting an MVP live with shuttle[0] - nothing is as fast for deploying a web app with a database to the cloud. For the database I’ve used shuttle’s dedicated SQL DB instance[1] and for the front-end I’ve used shuttle’s static file server[2].<p>If you are not scared of diving a bit into Rust, I&#x27;d a 100% recommend it.<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;shuttle-hq&#x2F;shuttle">https:&#x2F;&#x2F;github.com&#x2F;shuttle-hq&#x2F;shuttle</a> [1] <a href="https:&#x2F;&#x2F;docs.shuttle.rs&#x2F;resources&#x2F;shuttle-shared-db">https:&#x2F;&#x2F;docs.shuttle.rs&#x2F;resources&#x2F;shuttle-shared-db</a> [2] <a href="https:&#x2F;&#x2F;docs.shuttle.rs&#x2F;resources&#x2F;shuttle-static-folder">https:&#x2F;&#x2F;docs.shuttle.rs&#x2F;resources&#x2F;shuttle-static-folder</a>
评论 #34531454 未加载
cdelsolarover 2 years ago
I&#x27;ve gotten fast enough with Go + Twirp&#x2F;proto for the API. sqlc+pgx for the database interface. (i.e. generate as much code as possible). I have a couple of functions&#x2F;middlewares I can pull in for user auth. I don&#x27;t think this is that much slower than Django if at all.
cbrakeover 2 years ago
Backend: Go, Frontend: Elm.<p>Both languages are simple to read, easy to maintain, and very fast&#x2F;efficient.<p><a href="https:&#x2F;&#x2F;docs.simpleiot.org&#x2F;docs&#x2F;ref&#x2F;vision.html#technology-choices" rel="nofollow">https:&#x2F;&#x2F;docs.simpleiot.org&#x2F;docs&#x2F;ref&#x2F;vision.html#technology-c...</a> <a href="http:&#x2F;&#x2F;bec-systems.com&#x2F;site&#x2F;2048&#x2F;go-for-iiot-systems" rel="nofollow">http:&#x2F;&#x2F;bec-systems.com&#x2F;site&#x2F;2048&#x2F;go-for-iiot-systems</a> <a href="http:&#x2F;&#x2F;bec-systems.com&#x2F;site&#x2F;1625&#x2F;why-are-go-applications-so-reliable" rel="nofollow">http:&#x2F;&#x2F;bec-systems.com&#x2F;site&#x2F;1625&#x2F;why-are-go-applications-so-...</a>
iwebdevfromhomeover 2 years ago
While I prefer python for everything else, I&#x27;d go with Laravel Jetstream[1] for an MVP, just like I did with the last one I had to build. It&#x27;s laravel, you can use Vue (React or Svelte) for your views instead of the blade templating language that comes with the framework. Jetstream also comes with Auth, user login and subscription and other useful stuff.<p>And for the flavor, I&#x27;d just go with DaisyUI[2] again, since it&#x27;s based on tailwindcss and it&#x27;s what I&#x27;ve been using lately.<p>In my experience, I can build MVPs real fast with the stack described above.<p>[1] <a href="https:&#x2F;&#x2F;jetstream.laravel.com" rel="nofollow">https:&#x2F;&#x2F;jetstream.laravel.com</a> [2] <a href="https:&#x2F;&#x2F;daisyui.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;daisyui.com&#x2F;</a>
uoaeiover 2 years ago
Good timing: a lot of top-level comments here mention Rails on Docker, then this post rockets to the top of the front page: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34533930" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=34533930</a>
cikover 2 years ago
Depends what I&#x27;m building. When getting it done as quickly as possible, I&#x27;d rely on Python - Django, and Postgres. If time is still of the essence, but not as breakneck, I&#x27;ll use Python - Fastapi and Posygres.<p>If I have more time, I use go - chi and redis as a primary database.
samhukover 2 years ago
Because of the expertise I have, number of packages i&#x27;ve created for it, and sheer ease of use, I pretty much always do the same thing:<p>Node.js, express.js, Typescript for the &quot;central command&quot; server that acts as any client&#x27;s first port-of-call.<p>Central command fans out to whatever tech is required for the job. Very typical for me is fanning out to various python Flask servers to do ML&#x2F;image proc&#x2F;etc. work or connect to GBQ.<p>PostgreSQL for persistence because it&#x27;s pretty much the undisputed pereto-optimal solution: solves 80% of problems with 20% of the effort. Does almost everything you need until you get to the big scales, which by then you can afford to just pay the wizards to do the Cassandra, Dynamo, Redis, haskell, etc. magic
donatjover 2 years ago
Combination of LAMP and Go, which is what I have been doing for years. You can knock out a functional MVP in PHP faster than anything else and iterate very quickly. Then spots where performance is an issue work in some Go microservices.<p>This has done my team very well for years.
评论 #34537229 未加载
ajckover 2 years ago
As others have said it&#x27;s about what a developer personally is familiar with and can execute well and fast with.<p>For me that&#x27;s Laravel mixed with raw PHP (a fantastic and high performance language that has proven itself for a long time with some of the most popular sites on the internet), running on a cloud platform that requires literally the lowest amount of devops possible, so maybe Heroku but more likely Google Cloud&#x27;s AppEngine or CloudRun. Frontend I personally would use raw JS with JQuery for convenience and compatibility. Probably Twitter Bootstrap for styling etc.<p>Result of all that is a quick well functioning and reliable site or service.
rgloverover 2 years ago
Joystick [1] using MongoDB as the primary database. Run a few instances on VPS and then a load balancer in front. This is how I run my site [2] following a massive amount of headaches and random downtime fighting w&#x2F; a k8s cluster. Zero downtime since I moved it over in October. Only thing I don&#x27;t like is I&#x27;m using a third-party DB host for Mongo (ScaleGrid) which has unfortunately gotten quite slow over the past year. Planning on moving this to a self-managed VPS as well.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;cheatcode&#x2F;joystick">https:&#x2F;&#x2F;github.com&#x2F;cheatcode&#x2F;joystick</a><p>[2] <a href="https:&#x2F;&#x2F;cheatcode.co" rel="nofollow">https:&#x2F;&#x2F;cheatcode.co</a>
nodemakerover 2 years ago
My sweet spot is<p>1.Flask with Postgres for API. 2. C++ with Pybind11 for core performance engine. 3.Whole stack running on a single cloud instance with docker compose. 4.Next.js, Typescript, Tailwind for frontend. 5.Github Actions for CI&#x2F;CD and deployment to cloud.
leonidasvover 2 years ago
Google Cloud Run (with Dockerfiles) + CloudSQL (Postgres) + Cloud Tasks.<p>On the back-end, NestJS with Typescript plus some query builder such as Knex (TypeORM is pretty buggy). Or maybe even try Prisma.<p>For front-end it depends. I would try using just Vanilla JS with Tailwind if possible or fallback to React + Tailwind if there are too many screens, or they need a lot of updates based on state.<p>Those are mostly technologies I&#x27;m comfortable with because I use them every day. However, if I have the option to waste time researching and&#x2F;or learning, I would research the state of server-side Kotlin and learn Elixir&#x2F;Phoenix before making a decision. NestJS can ge too verbose sometimes.
adavover 2 years ago
Whichever &quot;boring&quot; technology you&#x27;re most familiar&#x2F;fastest&#x2F;productive with. It rarely matters. Don&#x27;t waste time learning a new language&#x2F;platform when you should be testing the idea itself as quickly as possible.
dom96over 2 years ago
Depends on the project.<p>But in general:<p>* Old School VPS or Cloudflare Workers (if the problem lends itself well to Workers)<p>* Usually leaning towards sqlite instead of a hosted postgres (as that&#x27;s often overkill)<p>* Language: whatever fits the problem best. These days likely TypeScript as it&#x27;s so versatile.
hugsover 2 years ago
Heroku&#x2F;Node.js&#x2F;Express&#x2F;Bootstrap&#x2F;Three.js<p>Old school, but it works.<p>I keep that side of the stack simple because the front-end is ESP32&#x2F;MicroPython&#x2F;3D-printed-parts&#x2F;aluminum-extrusions&#x2F;lots-of-motors.
NetOpWibbyover 2 years ago
- SvelteKit (TypeScript&#x2F;Sass) for front-end - Deno, GraphQL, and EdgeDB for back-end
SplitVengeanceover 2 years ago
I&#x27;m using Supabase, and a flask server for backend. And using Flutter for front end.
dcchambersover 2 years ago
Depends on what the product is. If it&#x27;s ultimately some kind of CRUD app, hard to beat Rails.<p>I&#x27;d probably run it on a managed K8s platform though instead of a VPS. At the very least use a managed (postgres) database instead of running my own.
dbinghamover 2 years ago
Just about to release an MVP.<p>I went with:<p>Terraformed AWS&#x2F;EKS<p>Docker<p>Postgres<p>Node&#x2F;Express<p>React<p>I&#x27;m pretty language agnostic, but for webstack I like to use Node, because it means I don&#x27;t have to context switch too hard. I&#x27;m using the same language on the frontend and backend with the same APIs. I only have to keep one standard library in my head and a lot of packages are compatible with either front or backend.<p>Whenever I&#x27;m working on the web, that&#x27;s going to be my go to.<p>I would consider Typescript, but I don&#x27;t think the cost&#x2F;benefit of Typescript really balances out until you have a team. The need to create types and type harnesses for libraries slows you down at first, and speed is the name of the game with an MVP.
评论 #34539982 未加载
biftekover 2 years ago
A lot of these suggestions sound needlessly complex but I&#x27;m probably just getting old.<p>I&#x27;d say either CGI scripts, PHP, or Ruby and sqlite as a DB, all hosted on a single VPS. That&#x27;ll get you plenty far and be easy to grow out of.
cebuover 2 years ago
Currently building with Next&#x2F;TRPC&#x2F;Prisma&#x2F;PG and would choose it again. I might be a little slower than starting with a full-featured MVC kit like Laravel or Rails, but having an e2e type system is so worth it to me. I do miss having a more mature ORM.<p>I&#x27;m constantly tempted by Phoenix but desuaded by the lack of a type system. Does elixir somehow make up for the lack of types as a functional language? Also, I can reuse a good deal from my current stack in a react-native app for mobile, which I&#x27;d miss out on in another framework.<p>Wish I could say Flutter, but have not been impressed by the web experience.
评论 #34536299 未加载
Towaway69over 2 years ago
I recently built a Web based MVP and used Node-Red as backend. Frontend was python+flask, postgres and everything dockerized.<p>I&#x27;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).<p>Using Node-Red forced me to build an api for the frontend, the frontend has no direct contact with postgres.<p>Plus I found it to be more flexible than directly coding when I wasn&#x27;t even sure what the database schema would look like.<p>Database modelling was done with pgModeler, I.e. No migrations and more pgsql functions and triggers.
评论 #34538411 未加载
ilrwbwrkhvover 2 years ago
I tried everything from supabase to rails. These days if I need a quick mvp it&#x27;s built with Imba on the front-end and Pocketbase on the backend. The installation and deployment story of Pocketbase is the easiest.
carapaceover 2 years ago
Elm on the frontend, Elixir on the backend.<p>Elm because then you can mostly ignore JS et. al. You can hire a normal person (anyone who can solve Sudoku puzzles) and train them up to make working web UI in a week or two. Elm makes that possible. It&#x27;s like what if you could start a professional bakery with just an Easy-Bake Oven.<p>Elixir because it&#x27;s more approachable than Erlang. Erlang (the BEAM &amp; OTP) because it&#x27;s much closer to the domain (if you&#x27;re making a complex interactive multi-user kind of a thing, eh? If not then it doesn&#x27;t really matter what backend stack you use.)
gloosxover 2 years ago
1. k8s 2-node cluster on cheapest instances<p>2. Hosted Postgresql<p>3. Hosted Graphql API layer microservice (like hasura)<p>4. Hosted hhtps server<p>5. Some kind of cloud storage solution<p>5. Load-balancer ingress<p>6. Some kind of CDN<p>Spinnable in less than day with SSL on, works perfectly for any app to scale and covers most production problems
Elidrake42over 2 years ago
Late to the thread and haven&#x27;t read anyone else&#x27;s responses yet, but I get the feeling this is going to be a common refrain; I&#x27;d just go with what I&#x27;m most familiar with.<p>Some off the shelf PHP8&#x2F;Nginx Docker container, Laravel for the API (always pull in php&#x2F;larastan for enforcing best practices), Maria for the DB, Laravel&#x27;s Blade&#x2F;Vue for the front, probably slap it on AWS as that&#x27;s what I&#x27;m most familiar with. I like structured data, I like that modern PHP has (90%) of the safety of Java while being less verbose.
kakwa_over 2 years ago
Golang (most likely a rest API using the Echo framework).<p>Postgres and maybe Redis if I need a message queue or cache.<p>React for the front.<p>Nginx and certbot for the reverse proxy.<p>Everything hosted on a cheap OVH VPs.<p>Mostly because it&#x27;s what I am familiar with. Plus it&#x27;s cheap specially since I already have the VPs anyway.
dineshkumar_csover 2 years ago
Go service with Postgres (without external cache), deployed (SCP) in GCP VM<p>Reducing touchpoint definitely helps at MVP stage. You&#x27;ve to trade performance with features (depending on the tool dev tools vs CRUD business)
me551ahover 2 years ago
Backend<p>.NET Core on Linux - Works really well, C# is a great language and quite performant too.<p>EKS&#x2F;ECS on AWS with spot instances - works out pretty cheap<p>Cloud DBs like Aurora or DynamoDB<p>React for frontend, because of how many libraries are easy to get for it.
h1fraover 2 years ago
Currently building an MVP:<p>- NodeJS, Typescript, Docker<p>- Fastify for the API<p>- Sequelize for ORM (Prisma seems like a good choice too but comes with too many features imo)<p>- Postgres (locally rn)<p>- AtlasDB for migration (I like the declaration style)<p>- Hosting didn&#x27;t choose yet but would go with vercel or free tier GCP<p>Im proefficient with JS so that explains the why, however in 10 years the ecosystem still didn&#x27;t catch with Rails in term of having one solution to all problems.<p>You still have to carefully choose your dependencies, all tutorials are quickly outdated and it&#x27;s missing some crucial pieces that you have to glue manualy or code entirely.
评论 #34538077 未加载
jefff35over 2 years ago
For simple cases maybe Bridgetownrb which is a static site generator. The twist is that it can have a dynamic part with roda.<p>For an application I&#x27;ll use rails with postgresql (reliable and flexible can also store documents). Redis and sidekiq for background processing. Turbo, hotwire, stimulus and tailwindcss on the front-end. Vanilla rails is the best for me. Easier upgrades in the long run.
vipullover 2 years ago
FLask would be myy pick!<p>I have worked with it in the past, and having familiarity for the MVP trumps all, for me. As I can rely on it to provide me with a solid backend without having to worry about unexpected..
thrown1212over 2 years ago
I’ve gone all in on Cloudflare for my “stack”. R2, durable objects, D1, queues, logs, Pages and Workers. It all works beautifully, out the box, dev env baked in (wrangler), Internet scale.
SIRHAMYover 2 years ago
I&#x27;ve been building MVPs for the past yearish with this stack. Some of these choices are newish &#x2F; smallish but it&#x27;s the simplest, most enjoyable stack I&#x27;ve tried so far.<p>- Frontend: SvelteKit (Dockerized)<p>- Backend: F# &#x2F; .NET running Giraffe (Dockerized)<p>- Data: Postgres (Managed - currently GCloudSQL)<p>- Hosting: Serverless Containers (currently GCloudRun)<p>I built a boilerplate for this to make it easier to improve &#x2F; spin up: <a href="https:&#x2F;&#x2F;cloudseed.xyz" rel="nofollow">https:&#x2F;&#x2F;cloudseed.xyz</a>
robertakarobinover 2 years ago
I&#x27;d run an API using Deno (<a href="https:&#x2F;&#x2F;deno.land" rel="nofollow">https:&#x2F;&#x2F;deno.land</a>), and consume that API with an SSR&#x2F;SSG site built using Astro (<a href="https:&#x2F;&#x2F;astro.build" rel="nofollow">https:&#x2F;&#x2F;astro.build</a>). SCSS for styling, and probably just Vanilla JS (written in Typescript and compiled via Deno) — I increasingly find that unless my site is massively interactive, plain old Vanilla JS is totally sufficient.
fmxexpressover 2 years ago
Building an MVP right now. Digital Ocean but may switch to Linode. LAMP. Wordpress for web and the API. Delphi for iOS, Android, Windows, macOS, and Linux clients. Stable Diffusion.
heetonover 2 years ago
For almost everything it’s Elixir at the moment.<p>Phoenix is wonderful for web apps, LiveView makes UIs about 2x easier and faster.<p>For more interesting electronics MVPs I still use Elixir + Nerves for prototyping.
deadly_synover 2 years ago
A good stack IMO has the fewest moving parts possible.<p>JAMstack for the frontend served via cdn<p>Terse STATELESS apis on the backend likely in Go on a managed k8s cluster<p>DB choice depends on requirements for the app IMO if its data that needs to consistently persist put it in a relational DB like maria or postgres. If the data is short lived let it hit mongo or otherwise.<p>To be completely honest though with current tooling you could do an e2ee local sqlite database and store it in an S3 bucket using a guid per user.
ksajadiover 2 years ago
I went through this exercise recently, looking for a stack for a greenfield project which I had full control over. Tl;dr: I chose Rails, albeit with ViewComponents.<p>When I compared the existing frontend backend stacks like Svelt, Next, or a Go, Rust, whatever backend + React frontend, the amount that’s in Rails out of the box is just not even close to the rest. From ActiveRecord to secret management, a dynamic ecosystem of gems for almost anything and much more, choosing another stack just didn’t make sense.<p>Believe me when I say I really wanted to choose React for frontend because of its community and ecosystem but for an app with a backend that there is so much Rail does for you that you’d be spending weeks rebuilding with anything else.<p>A caveat is that this is Rails + Hotwire and Turbo + ViewComponents that makes it a no brainier. The old school Rails MVC would have been a harder sell
rajatsxover 2 years ago
These days I prefer Next.js + MongoDB for full stack apps. Pushing changes to a repo and have it deploy automatically feels like a super power.<p>I have a moderately complex project, which is built using Next.js but it uses Yarn workspaces (for code sharing) and Docker (for deployment) but I waste a lot of time putting out fires w.r.t this setup than actually building features. I am thinking about doing away with Docker and Yarn 2 to keep the setup simple.
pphyschover 2 years ago
Django. Modern Python has been phenomenal with its choice of feature additions (f-strings, type annotations v2, structural matching, better timezone support, etc.) and its a language with great mindshare right now.<p>HTMX has been very promising, I have bumped into one or two bugs with it but there are always simple workarounds due to the sheer surface area of HTTP+HTML.<p>Postgres for great JSON support, keeping some stuff out of rigid schemas is critical for developing MVPs.
likeabbasover 2 years ago
Backend: Rust + Axum&#x2F;Tonic<p>Frontend: If webapp needed, Typescript + React. If just html templating, probably Yew<p>Database: PostgreSQL. Move to Yugabyte or Scylla if scale becomes needed.<p>Streaming&#x2F;event driven architecture: Fluvio<p>Cloud: AWS<p>Servers: ECS&#x2F;Fargate to start. Move to Kubernetes as needed<p>IaaC: CDK<p>Repository: Github Monorepo<p>CI&#x2F;CD: Unsure.<p>Style: Monolith API server. Separations will be made through Rust modules and interfaces. For anything that requires dedicated CPU&#x2F;threads, those will be moved to separate services to be called by the monolith via gRPC.
reducesufferingover 2 years ago
Next.js for both backend (server React and REST API) and frontend. Prisma ORM to Planetscale DB (mysql auto scaling). NextAuth. TailwindCSS. Typescript.<p>Very simple, very easy to deploy and scale, and in-tune with all the best practices of fast frontend (auto caching, SSG, ISR, prefetching, client side nav, etc)<p>Didn’t like Django. Deployment more annoying, templates are weak and DSL-specific, React integration is poor and then DRF is a strange verbose monstrosity.
anderfernandes1over 2 years ago
I built an MVP that&#x27;s been running in production for two customers entirely in Laravel and Semantic UI (CSS). When the need to a better UI was a concern, I added bits of client side Vue.<p>Now I&#x27;m rewriting my front end entirely in Svelte(Kit) and Tailwind, and keeping the Laravel backend for now. I will experiment with more lightweight PHP backends and Rust in this rewrite just to see how good (or bad) things can get.
foobarbecueover 2 years ago
Django, using django templates and hand-written JS and CSS. No CSS or JS build steps -- that just makes things harder at the MVP stage, I have recently decided.<p>I actually just built one. I tried a few other things first -- started off in BlazeJS &#x2F; NextJS, didn&#x27;t like it, tried some other react &amp; backend combinations and there were always obstacles. The kicker was that I wanted geodjango for geospatial support.
iambatemanover 2 years ago
The best stack is the one you know.<p>I guess I’m old school, but I built SimplifyRecipe.com in a few hours using Laravel. That’s not to say that Laravel is better than anything else, but I’m extremely fluent with that ecosystem.<p>I will say, I believe that Laravel or Ruby on Rails would be my favorite starting point for a solo development effort. I spent 1000+ hours working on JavaScript framework development and found it to be really cumbersome.
评论 #34538342 未加载
spamizbadover 2 years ago
Backend? Probably Python w&#x2F;Pyright (Type-checked Python), FastAPI, Postgres.<p>Reasoning is pretty straight forward: I know it quite well and it&#x27;s easy to grok and hire for them. Good tooling and ecosystem around it. Are there better languages out there? Sure, but Python has the advantage of being wired into so many different business and scientific domains its impossible to paint yourself into a corner.
mathcavalliniover 2 years ago
Backend: NestJS + Prisma (DO NOT USE TYPEORM!!!) Front-end: Next.js with TypeScript (for SEO) Infra: AWS EB (t.micro) + Cloudflare
fzeindlover 2 years ago
- Next.js frontend&#x2F;backend, edgedb on top of postgresql, Linode server behind cloudflare. No Kubernetes.<p>Or, if you want to be more classical:<p>- kotlin backend using dropwizard, jdbi ORM connecting to postgresql. No kubernetes.<p>Or, if you want &quot;plug and play&quot; as backend:<p>- next.js, supported by postgREST. No kubernetes.<p>Or, if you want something exotic:<p>- elixir&#x2F;erlang&#x2F;phoenix as frontend and backend, no kubernetes.<p>I think the future is probably<p>- some frontend, edgedb, no kubernetes
MattyMcover 2 years ago
Vanilla Rails.<p>My app started 7 years ago with Rails + AngularJS on the front end. Wish I had just used Rails for 90% of what I had used AngularJS for.
fatih-erikliover 2 years ago
NextJS&#x2F;Typescript. For the database, maybe Redis, or Mongodb. RDMS except sqlite seem to be overkill for an MVP.<p>For frontend, a picocss-like minimal framework.<p>Django for the next stage. It&#x27;s good for blogs, feedback management, back-office. Django beats rails. Rails is generating (scaffold) code while Django abstracting the CRUD operations. Clever abstraction beats generated code.
jamil7over 2 years ago
FastAPI &amp; Postgres for the backend. REST + websockets for the API. Over the years I&#x27;ve tried all kinds of BaaS and more magic &quot;X as a service&quot; solutions, but I often hit some edgecase or limitation that is a dead-end or run into some bug I can&#x27;t fix myself. So I prefer the flexibility and robustness of Postrgres with the ecosystem of Python.
matthewsinclairover 2 years ago
If I was starting from scratch and didn&#x27;t have any other constraints, I&#x27;m sure that I would go with Elixir&#x2F;Phoenix.
intelVISAover 2 years ago
Fully custom runs anywhere stack, hand written OS, orchestrator, VMM and TLS*<p>*bearSSL powered because I can&#x27;t into curves myself :&#x2F; as the only external dep<p>if state is needed I lean on DuckDb but eventually a more optimized in-memory columnar data structure will be devised.<p>Mostly because I found all the other options in this space to be lacking for performance-oriented low latency services.
collaborativeover 2 years ago
I could explain what I&#x27;d choose, but that&#x27;s irrelevant as it&#x27;s based on my existing skills<p>The one thing I can&#x27;t recommend enough is the value of organizing persistence around a nosql distributed db and blobs of zipped files (also distributed)<p>In my experience, db is expensive. But this setup is dirt cheap.<p>Sqlite is good but it makes you worry about scaling (so it&#x27;s great for an MVP)
vishnuguptaover 2 years ago
I&#x27;d say hybrid-ish.<p>1. Hosting, full on AWS. Because I&#x27;m super comfortable with it and I get end to end; from domain registry to data store and everything in between.<p>2. (mostly old school) Web app stack: React, Java&#x2F;NodeJS, Postgres. S3 for doc store fronted with Cloudfront. Reason: Battle tested, huge and thriving ecosystem, most of the problems are solved.<p>3. Lambda for async tasks.
wonderwonderover 2 years ago
My last SAAS was just raw php on the backend with postgres. Raw JS on the front end with a little JQuery. Ran for 9+ years, zero down time, zero issues. Supported the Marketing and legal department of a Fortune 500 company. Old school is they way. It does depend on what you are building though.<p>Recently really started to like Python so would probably try DJango.
demircancelebiover 2 years ago
T3 Stack (Next.js, Typescript, Tailwind, tRPC, Prisma) with Postgresql (Supabase is a good free choice), deployed on Vercel w&#x2F; Github Actions. These give you the ability to iterate rapidly and is the best choice in the market imho. <a href="https:&#x2F;&#x2F;create.t3.gg&#x2F;" rel="nofollow">https:&#x2F;&#x2F;create.t3.gg&#x2F;</a>
telecomsteveover 2 years ago
A web3 stack, everything client-side and peer-to-peer. HTML&#x2F;CSS&#x2F;JS for front-end. JS&#x2F;blockchain for backend. JS client-side storage&#x2F;compute, JS libp2p library for peer-to-peer discovery, networking, syncing, updates, user-generated content, etc. Blockchain for things that need to be tamper-proof or involve payment.
racl101over 2 years ago
I certainly won&#x27;t do it in the stack that I don&#x27;t know even if the rest of the world is saying that stack is the greatest thing since sliced bread.<p>But more importantly, it depends on what I&#x27;m doing.<p>Just to give you an example: if am I making a simple site with some dynamic content? Why would I use React for that or a giant framework for that?
manv1over 2 years ago
AWS + Node.js + Lambda + Aurora + API Gateway + ElasticCache + CloudFront + SQS + MediaLive + MediaConvert.<p>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&#x27;s.<p>We also have an express backend for the UI that&#x27;s running on some puny EC2 instance.
adam_gyroscopeover 2 years ago
I&#x27;d do python + django + bit.io (serverless postgres; I&#x27;m the CEO but I built it because I wanted to use it), deployed in a container to k8s somewhere. These are all personal biases to what I&#x27;ve used and know well; for someone new to backend I&#x27;d probably recommend next.js + nodepg + bit.io on vercel or similar.
Supermanchoover 2 years ago
The number of Elixir&#x2F;Erlang backend suggestions seems over-represented. Not even Phoenix, just a blanket language suggestion. This leads me to believe that many posts are throwing out their newest stack-fad they imagine would be good for an application. I wouldn&#x27;t take too much stock in the frequency of keywords here.
评论 #34537058 未加载
Leftiumover 2 years ago
SvelteKit hosted on Vercel serverless functions.<p>- Userfront for auth<p>- Not sure yet about DB&#x2F;persistence... Supabase? FaunaDB? MongoDB Atlas? Simperium?
lerosover 2 years ago
I like using ExpressJS with Typescript and a Postgres database. There are lots of great hosting options, but I&#x27;m using Heroku right now.<p>I do really like the Firebase&#x2F;Superbase options, but they impose restrictions and I don&#x27;t like having restrictions like that unless I know for a fact that I&#x27;m building something very simple.
评论 #34534019 未加载
m0lluskover 2 years ago
Basic REST inspired service made with node and expressjs implementing business logic based interfaces and all data stored in Postgres. Most objects get UUIDv4 identifiers. Logging is with pino. Everything gets kept simple as possible so that junior developers can easily handle operations, basic extensions, or debugging.
knapcioover 2 years ago
React + Apollo GraphQL (on Node) + Mongodb (with Mongoose, possibly hosted on Atlas)<p>The reason is simple: I&#x27;m most comfortable and proficient with this stack and it&#x27;s scalable enough to run a mid-sized app. Moreover it&#x27;s very easy to share the code base between web app and mobile app based on expo (React native) if needed.
epolanskiover 2 years ago
The stack on which I feel more comfortable right now:<p>TypeScript on both sides with fp-ts[1], effect-ts[2], Postgres or any random document database with low friction, a random view library that has the best support for jsx and both client&#x2F;server side rendering (not react).<p>Any other stack would require me to learn new stuff and eventually slow me down.
adiusover 2 years ago
Frontend: Elm + Tailwind, Backend: Haskell (or some instant API Generator like Postgrest &#x2F; Airsequel), Database: SQLite, Automation: n8n &#x2F; Pipedream &#x2F; Zapier &#x2F; …<p>The strong typing of purely functional languages makes refactoring a breeze and let’s you quickly iterate and move from prototype to production.
edmundsautoover 2 years ago
Supabase for storage, lambda for backend processing (Twilio, mainly). Front end is all hand written js, pages are statically generated in Hugo. cloudFlare Pages to host.<p>All free, scalability won’t be a problem since it’s a niche app and db r&#x2F;w work is minimal. I estimate I can support 10k userbase all for free.
sonoviceover 2 years ago
Pocketbase on a very small VPS for the backend and SolidJS + TailwindCSS for the frontend, served using caddy.
kennyfrcover 2 years ago
I built a SaaS MVP in 2 months (nights and weekends) using Roda + HTMX + Alpine.js + Missing CSS + Postgres. I was quite happy with how moldable Roda is.<p>I tried rails in conjunction with roda in the first 2 weeks, but I felt far more productive with roda for my use case and stuck with it.
tootieover 2 years ago
Whatever is easiest to host and has the best module library for the problem domain. Assuming a web app is probably lean towards node on the backend to keep things simple. But really I&#x27;d look at platforms like fly.io, vercel, supabase, netlify and build around their defaults.
zoomzoomover 2 years ago
Choose something from bucket 1 and pair it with an own-cloud PaaS such as what we&#x27;re building at withcoherence.com! There&#x27;s nothing that will help you move faster than using well-understood tools with huge ecosystems, and freeing yourself from glue code and internal tooling.
KerryJonesover 2 years ago
1. Laravel for backend -- continues to be one of the strongest communities &amp; ecosystem and feels beautiful to work with<p>2. VueJS for frontend<p>3. Hosted on Laravel Forge (using AWS)<p>4. Amazon RDS - MySQL (or similar) -- relational databases still solve most of the things I need, unless there were specific reasons to switch to a nosql<p>5. Tailwind CSS
truthisoutthereover 2 years ago
Rails , it has everything you need to build a reliable MVP fast, with good test coverage and solid architecture design.
spapas82over 2 years ago
1. Rhel 9 (alma&#x2F;rocky linux) on a vps (don&#x27;t really matters where, aws, azure, do, hetzner, wherever).<p>2. Postgres 15<p>3. Python 3.10&#x2F;Django 4.x served with gunicorn<p>4. Jquery and or alpine js<p>5. Bootstrap 5<p>6. Caddy to serve everything<p>7. S3 if a lot of file uploads are needed<p>--<p>I&#x27;d definitely keep using the same stack post mvp by vertically scaling the db, horizontally scaling the app servers.
Thorentisover 2 years ago
Django backend. HTMx on the front end. Possibly an SQLite dB in a mounted volume, or a postgresql server if I need those features and expect more traffic. Might build the django app into a container and host on ECS or another container platform (like on DO or Vultr).
AYBABTMEover 2 years ago
Rails or NextJS on Vercel&#x2F;Fly&#x2F;Netlify&#x2F;wtv, with PlanetScale for the DB. That&#x27;s it.
gregjotauover 2 years ago
- Spring boot (Java 19)<p>- HTMX + Thymeleaf (replacing need for any SPA framework)<p>- Bootstrap<p>- Vanilla JS when needed<p>- Postgres<p>- Deploy on Ubuntu server with a deploy.sh that just does cd =&gt; git pull =&gt; gradlew build =&gt; systemctl restart X.service :)<p>Why? I have been convinced that most web application can and should be created without JS frameworks :P
cehrlichover 2 years ago
T3 stack (Next.js, tRPC, Prisma with MySQL, NextAuth, either Tailwind or a component library depending on the project), deployed to Vercel. Maybe swap Prisma for Kysely if cold starts become an issue.<p>Disclaimer: I maintain an init tool for this stack so I&#x27;m somewhat biased
Kalanosover 2 years ago
Python: SQLite ORM with PeeWee + realtime UI with DashPlotly <a href="https:&#x2F;&#x2F;betterprogramming.pub&#x2F;dash-is-deeper-than-dashboards-5ab7414f121e" rel="nofollow">https:&#x2F;&#x2F;betterprogramming.pub&#x2F;dash-is-deeper-than-dashboards...</a>
mplewisover 2 years ago
I&#x27;m currently moving from Rails to RedwoodJS (<a href="https:&#x2F;&#x2F;redwoodjs.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;redwoodjs.com&#x2F;</a>) and loving it. The framework is very well integrated and built around its components.
seinecleover 2 years ago
5. JakartaEE for the backend, Jakarta Faces + Primefaces for the front end, redis for the db, Javalin if API endpoints must be provided. Hetzner server. Only pain point would be the NGINX config, always non trivial.<p>Why? Very simple, fully featured, ready to scale.
s-xyzover 2 years ago
Back-end: - Python 3.10 or 3.11 - Cloud functions 2nd gen as first choice (most pipelines &amp; simple APIs) - Cloud run for (more advanced) APIs with FastAPI<p>Databases - Firestore for front-end related data - BigQuery for Analytics<p>Front-end - ReactJS with Hooks - MUI Material
debesylaover 2 years ago
Because in my experience MVP at first is a marketing test, not functionality - I need something to easily put text and images down :)<p>...So - anything. Simple WordPress page with some content builder would work.<p>No need to invent functionality before testing out the need.
Fire-Dragon-DoLover 2 years ago
I wish i could use Go, but we are not there yet framework-wise, so I&#x27;m either using Phoenix or Rails, depending for the team.<p>If the code is planned to be a separate React + API app, for example because React Native will be used, the I&#x27;d use Go
x98asfdover 2 years ago
If you are already using postgres, then postgrest for backend, and solidJS for front end.
vbezhenarover 2 years ago
Frontend: React + React Query.<p>Backend:<p>* Java Spring if it looks like monolith.<p>* Golang if it looks like microservice architecture.<p>Postgres for data.<p>S3 for blobs.<p>RabbitMQ for queues.<p>Kubernetes for infrastructure. Managed or self-hosted, doesn&#x27;t matter. One 16GB VPS is good enough for start and can be scaled later.<p>That&#x27;s my approach to any architecture today.
评论 #34535777 未加载
robertwt7over 2 years ago
I am sticking to Typescript nowadays, its so easy to share types between FE and BE, creates monorepo with many different packages.<p>I am in fact building MVP right now with Nextjs and Nestjs, i&#x27;ve never felt more productive than this
comprevover 2 years ago
I&#x27;m building my first solo MVP using Falcon. The product will be REST API only with the exception of signup&#x2F;payment pages, although a friend is helping with that in Laravel, as webdev is his thing.<p>For hosting I&#x27;ll use Hetzner.
hooverdover 2 years ago
Django-Ninja but in Lambda with an RDS Postgres backend and a Vue&#x2F;TS frontend. Why? Because it&#x27;s what I know. It&#x27;s on my agenda to learn more about Elixir. I think it really depends on what the MVP is for!
picturover 2 years ago
I am working on a boilerplate as below. I normally use nextjs. But instead of dealing with SSR issues I will try to solve it with a tool like prerender.<p>backend: express + prisma + sqlite<p>frontend: vite + react + react-query + chakra-ui + zustand<p>infra: cloud run, prerender
turboboosterover 2 years ago
WordPress + mysql
mbvistiover 2 years ago
My current go-to are: 1. Go (echo&#x2F;gin) or Rust(actix&#x2F;axum) (old-fashioned server-side rendered HTML) 2. alpine.js 3. htmx.org 4. tailwind<p>I&#x27;ve found that combination to give me amazing DX and appropriate speed of development.
Gordonjcpover 2 years ago
Django for the backend, Bootstrap for the frontend.<p>I actually prefer Flask and SQLAlchemy, but I haven&#x27;t found anything to beat Django for sheer &quot;ten minute POC lets-do-the-show-right-here&quot; pulling something out my arse.
bradwoodover 2 years ago
AWS Serverless -- all day long...<p>Lambda, DynamoDB, API G&#x2F;W, SNS&#x2F;SQS, EventBridge, S3, Cloudfront.<p>Reasons: no servers, no VPCs, no k8s yaml, great tooling, easy to deploy (serverless framework, terraform, etc), easy to secure.
评论 #34538257 未加载
v3ss0nover 2 years ago
Supabase is very resource intensive. Django+drf+ spectacular+filters+jwt gives you all the perks of supabase with - much easier syntax - much lighter weight - alot higher productivity - UI auto generation
评论 #34530802 未加载
nicolashahnover 2 years ago
Kotlin. Seems like the true successor to Java rather than Go. Comparable speed but much more enjoyable than Go due better type system, quality of life features, and the massive ecosystem of Java.
awbover 2 years ago
Current word count:<p>* javascript &#x2F; js: 95<p>* rails: 89<p>* django: 86<p>* postgres &#x2F; postgresql: 77<p>* react: 75<p>* python: 52<p>* supabase: 52<p>* elixir: 44<p>* ts &#x2F; typescript: 41<p>* nextjs: 31<p>* sqlite: 29<p>* laravel: 28<p>* vue: 27<p>* phoenix: 27<p>* net: 26<p>* htmx: 23<p>* node: 23<p>* html: 20<p>* github: 20<p>* tailwind: 18<p>* rust: 18<p>* ruby: 18<p>* aws: 17<p>* vercel: 16<p>* prisma: 16<p>* docker: 16<p>* graphql: 15<p>* firebase: 15<p>* php: 14<p>* flask: 13<p>* svelte: 13<p>* hotwire: 13<p>* liveview: 12<p>* curl: 12<p>* grep: 12<p>* bootstrap: 11<p>* fastapi: 11<p>* spa: 11<p>* java: 11<p>* linux: 10<p>* express: 10<p>* sveltekit: 10<p>* go: 10
评论 #34538371 未加载
jononomoover 2 years ago
I would use Supabase for the database and user auth system, I&#x27;d use Elixir&#x2F;Phoenix for the business logic, and I&#x27;d use Phoenix LiveView for the front end, with Tailwind for the CSS.
zyklonixover 2 years ago
&lt;half-joking&gt; <a href="https:&#x2F;&#x2F;github.com&#x2F;TheAppleTucker&#x2F;backend-GPT">https:&#x2F;&#x2F;github.com&#x2F;TheAppleTucker&#x2F;backend-GPT</a> &lt;&#x2F;half-joking&gt;
morphleover 2 years ago
<a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=QTJRwKOFddc">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=QTJRwKOFddc</a><p>Smalltalk, Squeak, Pharo, Seaside, PierCMS, Lively Kernel<p>Used by several succesful startups.
tavy88over 2 years ago
Ruby on Rails 100%. I can have a web app with user&#x2F;pass authentication in less than 1h. Combine that with TailwindCSS and you have a modern looking app in no time.
mcvover 2 years ago
Probably Svelte + Node.js.<p>I don&#x27;t have any experience with Svelte yet, but I hear good things about it compared to other front-end frameworks. I&#x27;d definitely want to separate front and backend.
didipover 2 years ago
Infra: AWS EKS or GKE<p>Backend: Go and its ecosystem<p>Frontend: jQuery &amp; Bootstrap<p>Database: Depends on the idea<p>I can make fairly complicated UI interaction with these, I am crazy fast with these, and I have confidence that I can scale it as well.
wenbinover 2 years ago
i’ve been using django&#x2F;postgres for over a decade. if it were 5 years ago, i’d use django&#x2F;postgres for every project.<p>but recently i would use cloudflare pages, r2, d1, zero trust… in many cases, we don’t want to put eggs in the same basket. but in some cases (eg, building mvp, toy projects…), it’s convenient to be on an all-in-one platform .<p>for example, i recently launched a cms entirely on cloudflare: <a href="https:&#x2F;&#x2F;www.microfeed.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.microfeed.org&#x2F;</a>
threeseedover 2 years ago
Scala + Scala.js<p>The advantages of writing everything in the one language is massive.
评论 #34540048 未加载
tamasnetover 2 years ago
Spring Boot + Hilla (<a href="https:&#x2F;&#x2F;hilla.dev" rel="nofollow">https:&#x2F;&#x2F;hilla.dev</a>) + PostgreSQL, deployed on a Digital Ocean VM, possibly behind CloudFlare.
blablabla123over 2 years ago
Definitely 1., velocity is kind of predictable, it&#x27;s cheap and easier when working with more people. I like also more up-to-date stacks but collaboration is more tricky I think
princevegeta89over 2 years ago
Maybe the standard Node and React on the front end? Tried too many niche languages and technologies and now I always come back to JS to stick to the same platform for everything
lekeover 2 years ago
Laravel + htmx + sqlite + Bootstrap<p>I&#x27;m currently making something with these for the first time. I picked sqlite because it&#x27;s convenient and seems to be supported on free hosting.
评论 #34539858 未加载
dimglover 2 years ago
tRPC is incredible. I can imagine most businesses doing just fine with a single VPS on Vercel with a static React frontend and a tRPC backend. The iteration time is insane.
pythonbaseover 2 years ago
The preferred stack will be Django with DRF and maybe some htmx, SQLite and deployed on DO app platform.<p>Alternatively, NextJS with Firebase (or any other cloud DB) and deployed at Vercel.
FractalHQover 2 years ago
Sveltekit and Supabase. I can have a portable, auto scaling serverless app running with auth and user accounts &#x2F; CI CD in like 3 cli commands for $0.
kevinakover 2 years ago
To get started? SvelteKit with SQLite (+Prisma).<p>To scale: 1. N number of VPSes distributed around the world with LiteFS (most likely Hetzner)<p>2. SvelteKit and SQLite (with Prisma)<p>3. Anycast Service to direct traffic
nwsmover 2 years ago
Google Cloud Run or some similar scalable container-based abstraction. Off the shelf auth and DBaaS.<p>I have a lot of opinions on frontend stack too but they vary based on product.
m_herhofferover 2 years ago
Both old school and new school. Best of both worlds.<p>Java 17 Quarkus backends with GraphQL, PostgreSQL as DB<p>Hasura to stitch the APIs if needed<p>logto.io for AuthX<p>Svelte with Sveltekit, Tailwind, DaisyUI as a frontend
simonbarker87over 2 years ago
Typescript, Tailwind, NextJS, Supabase, Vercel and you just can’t go wrong.<p>If I needed a long running server for whatever reason I’d supplement Supabase with a NestJS app.
ptrhvnsover 2 years ago
Front end: TypeScript, Vite, React, FontAwesome, Radix UI, lodash, React Router, zod, SCSS.<p>Back end: Python, mypy, Django, Django REST Framework, Celery, Redis, PostgreSQL
rcarmoover 2 years ago
Django. It can run anywhere, including in lambdas, and I prefer having a solid piece of back-end that won’t crumble when I start changing data models.
torartcover 2 years ago
I like Svelte Kit for my UI and backend together since most things I&#x27;m building don&#x27;t need a public API. It makes it easy to work full stack.
maxcanover 2 years ago
Data: Postgres &amp; Hasura (for me Hasura is the goldilocks level of abstraction - lets me skip writing CRUD handlers, but doesn&#x27;t get in the way either when I need to do something complex).<p>Frontend: TypeScript, React, apollo client, graphql-code-generator, tailwind<p>Backend Logic: Lambda functions written in TS, packaged with serverless.com, but deployed with Terraform<p>CI: GH Actions<p>Deployment: AWS via Terraform. One account per environment under an umbrella org.<p>Because I&#x27;ve used this stack so many times I can get a &quot;shovel ready&quot; foundation going in minutes with a skeleton that I&#x27;ve been iterating on.
评论 #34538824 未加载
akullppover 2 years ago
No additional framework, just a typed language with good standard library and raw SQL. For the frontend I would probably reach to HTMX.
yieldcrvover 2 years ago
Next.js, React, Netlify, Ipfs+Filecoin<p>Not sure about where I would store relational data, I typically design systems to not need it, its just a system design problem
ianbutlerover 2 years ago
Elixir, either Ash or Phoenix frameworks<p>Postgres<p>React - createreactapp<p>Theres a few react frameworks I might sub out for now but otherwise this combo is a way to get things done right and quickly.
turtlebitsover 2 years ago
I&#x27;ve been going back to Flask + htmx for quick MVPs. I&#x27;d go for Heroku or Dokku&#x2F;Piku (self hosted) for super simple deployment.
japanman425over 2 years ago
.net core on whatever is the simplest to get it to production.<p>99% of your projects do not need hyper scale and you are just engineering problems for yourself.
sheikheddyover 2 years ago
People reading this for inspiration on what stack to use should keep in mind that the best stack is the one they&#x27;ll actually use.
mikewarotover 2 years ago
First I&#x27;d get it working on my Windows 10 PC, using Lazarus&#x2F;Free Pascal.<p>If it had to go on the web, then I&#x27;d try to output to WebAssembly.
davidmiglozover 2 years ago
- Frontend: Flutter for web app + native apps<p>- Backend: GoLang + Kubernetes<p>- Database: PostgreSQL<p>- Cloud: GCP + Firebase<p>- Computing: GKE Autopilot (or cloud run)<p>- Repository: GitHub (monorepo)<p>- CI&#x2F;CD: GitHub Actions
geradover 2 years ago
Vercel has been great for us for per branch deployments. Just so many nice things about having every release and branch ever available.
reactorover 2 years ago
Svelte + Quarkus + Postgres
sica07over 2 years ago
Laravel all the way. It comes with all the basic functionality I would need and tons of packages for almost any scenario.
prakashn27over 2 years ago
backend: NodeJs alone with Express or any webframework for API fronend: ReactJs, NextJs, Vercel along with Firebase DB: DynamoDB, Redis, FireStore and Postgres (along with Hasura) Infra: AWS, Serverless (Lambda, API Gateway), or K8s(containers) misc: Cloudflare for Domain management, caching and Analytics storage (using workers and key value store)
blparkerover 2 years ago
Purposefully boring as to not become a distraction. Personally, my current unsexy setup is Django, Vue, and Bootstrap.
topicseedover 2 years ago
Golang backend, Sveltekit frontend, and Openapi in-between with codegen on both ends to type it all (and document) throughout.
评论 #34637626 未加载
cloudkingover 2 years ago
MySQL, PHP, HTML&#x2F;CSS, JavaScript.<p>If it&#x27;s an MVP it doesn&#x27;t need to be optimized with fancy frameworks until it has active users.
999900000999over 2 years ago
Flutter&#x2F;Firebase.<p>Of course it heavily depends on what your actually building.<p>I prefer to do most of my logic in the frontend and Flutter is great for this.
f6vover 2 years ago
The one I’m most comfortable and experienced with. Because I think MVP is about getting the product out of the door above all.
omarhaneefover 2 years ago
I think question should include the size of the dev team.<p>Solo dev vs 50 devs might need different tools just to get out of each others way.
yhoisethover 2 years ago
I’d use a boilerplate like SaaS Pegasus.
aluminum96over 2 years ago
Angular and Express. I&#x27;m familiar with it and it&#x27;s easy to iterate fast with what you get out of the box.
gorbachevover 2 years ago
Whichever tech I&#x27;m most productive in.
deathemperorover 2 years ago
Nextjs deployed on Vercel Hasura with Postgres Apollo server deployed on Lambda using serverless framework.
评论 #34541782 未加载
svenfulenover 2 years ago
Definitely Django. It is SO easy to develop in python, and there are many learning resources available.
tdehnkeover 2 years ago
NoCode for MVP<p>Likely Adalo or Bubble, and Xano (stand alone DB with API)<p>Fast, easy to work with and adjust - it&#x27;s a MVP.
blodkorvover 2 years ago
Just php and mariadb. Nothing too facy.
golondonover 2 years ago
Whatever you are most productive with.
andrewstuartover 2 years ago
Nodejs plus plain sql Postgres<p>I used to use Django as a first choice but nodejs&#x2F;sql is much simpler.<p>React in front end.<p>Linux server running Caddy.
caromover 2 years ago
Go web app. MySQL or Postgres. Vanilla HTML&#x2F;JS&#x2F;CSS.<p>Could deploy to a VPS or AppEngine. Can run it locally.
braindead_inover 2 years ago
We are currently prototyping Supabase with Nextjs on the frontend. Also looking at edge functions.
speedgooseover 2 years ago
For the backend I would go with Hasura and some Python or typescript depending on who works with me.
shanebelloneover 2 years ago
I like Python with custom extensions in C. Python is quick and easy. C speeds up the slow bits.
ge96over 2 years ago
All JS for me with mysql&#x2F;postgres and OVH VPS<p>Node&#x2F;Express&#x2F;React (can use next&#x2F;nest)<p>NGINX Let&#x27;s Encrypt
mshake2over 2 years ago
Would be useful if each poster also included their years of experience in the industry ;)
davide_vover 2 years ago
It depends on the MVP, but I&#x27;d (still?) use the MEAN stack with the latest Angular and Node. Expecially because I made a boilerplate [1] that allows me to start any project faster.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;DavideViolante&#x2F;Angular-Full-Stack">https:&#x2F;&#x2F;github.com&#x2F;DavideViolante&#x2F;Angular-Full-Stack</a>
ericfrazierover 2 years ago
Definitely no mvc or mvt bs. No frameworks. All from scratch, because I enjoy coding.
ankisharmaover 2 years ago
Great insights from everyone.<p>To OP - It will be great to turn this in to a poll :-)
quadcoreover 2 years ago
Lately I used Redis as main db for a real time app that needs to boot where it were.
steponlegoover 2 years ago
Unix + C, Berkeley DB, all on a self hosted Threadripper. Zero cloud &#x2F; SAAS.
Dnguyenover 2 years ago
I currently use Remix Prisma SQLite Mantine Keep it simple so I can move fast
mark242over 2 years ago
* Whatever you already know<p>* And has good IDE support for opinionated formatting<p>* And doesn&#x27;t require a ton of setup-to-build effort (ie, no debugging your build tools)<p>* And has a quick pipeline from local development to production<p>That&#x27;s it. Language, database, framework, it doesn&#x27;t matter as long as you meet those four criteria.
mikestaubover 2 years ago
GRANT stack ( graphql, react, arangodb, node, typescript )
the__alchemistover 2 years ago
I would select it in accordance with project requirements.
rasulkireevover 2 years ago
Django, SQLite, StimulusJS, TailwindCSS, DigitalOcean Droplet, MailGun
ExtraEover 2 years ago
Django + serverless framework + lambda + AuraDB
tannerellenover 2 years ago
Svelte + SvelteKit with Supabase hosted on Digital Ocean with Nginx.
dangerboysteveover 2 years ago
NextJS&#x2F;Supabase&#x2F;TypeScript&#x2F;Tailwind&#x2F;React Native
recursivedoubtsover 2 years ago
rails, because it has so much baked into it<p>htmx &amp; hyperscript because I made them
danweeover 2 years ago
- VPS like DO<p>- Server-side rendered app with Golang<p>- If interactivity is required: maybe Vue.js or jQuery<p>That&#x27;s it.
gcjover 2 years ago
Probably Laravel + Inertia + React&#x2F;Vue&#x2F;Svelte
mythrwyover 2 years ago
Django, and possibly DRF with Vue if more dynamism was needed.
bitwizeover 2 years ago
CL with Hunchentoot and PostgreSQL on the back end, probably.
fedeb95over 2 years ago
You must state also which kind of product you want to build
champagnepapiover 2 years ago
full a full stack web app Backend: Postgres Go Frontend: Typescript React, with React Query Tailwind for styles<p>Why? Because i know these technologies fairly well.
yusufmalikulover 2 years ago
No one mentioned Golang?
vyrotekover 2 years ago
C#, ASP.NET Core, React&#x2F;Blazor, SQL Server, Azure
idontwantthisover 2 years ago
Nest JS and Typescript on EC2. MongoDB for database.
yakshaving_jgtover 2 years ago
I&#x27;d use Yesod and SQLite, and run it on a Hetzner machine.<p>KISS.
k0staaover 2 years ago
Kotlin + SpringBoot + Postgres TS + React AWS ECS
cunningfatalistover 2 years ago
Symfony. It&#x27;s just so much fun to work with.
rouanzaover 2 years ago
this <a href="https:&#x2F;&#x2F;create.t3.gg&#x2F;" rel="nofollow">https:&#x2F;&#x2F;create.t3.gg&#x2F;</a><p>typesafe next react trpc and prisma
sodimelover 2 years ago
Small old refurbished computer, and django.
tonymetover 2 years ago
Old school mono repo . VPS. golang + sqlite .
maleeroover 2 years ago
Python, Django, HTMX, AWS all the way, baby.
ipaddrover 2 years ago
Laravel because I want to focus on building
评论 #34539154 未加载
Gudover 2 years ago
Same as always - FreeBSD, SQLite and Flask
gavinhover 2 years ago
Django and HTMX
v3ss0nover 2 years ago
Django and HTMX
BigBalliover 2 years ago
The same as 10y ago: PHP &amp; SQL
EamonnMRover 2 years ago
Postgres, Sqlalchemy, FastAPI, Nginx.
dumbaccount123over 2 years ago
Prototype in C, commercialise in C++
auggieroseover 2 years ago
TypeScript! TypeScript! TypeScript!
pocket393over 2 years ago
Docker, Python, Flask, PosgreSQL
bmikailiover 2 years ago
SvelteKit+Typescript+tRPC+Supabase.
AndrewKemendoover 2 years ago
As little software as possible
alexbezhanover 2 years ago
Ubuntu + Node.js + HTMX + SQLITE
pookhaover 2 years ago
svelte, sqlite, postgres, a little bit of dropwizard, Java LTS 17 (maybe kotlin).
marcopicentiniover 2 years ago
Ruby on rails + Postgres.
dimmkeover 2 years ago
SvelteKit + Supabase.<p>It’s the opposite of what a lot of people recommend. It’s not battle tested. Both of these technologies are still maturing BUT:<p>I can write everything in JS&#x2F;TS, I don’t have to get good at Ruby PHP or Python<p>Postgres is a great skill to learn.<p>Supabase is portable and can be self hosted, and its JS client is easy to use for DB manipulation and stuff like object storage.<p>For me, building a true full stack web app (not a todo list tutorial but something with real custom features) was going to be a learning process because I’ve been so heavily front end focused. So I decided to try to learn with the most modern tools available. It’s mostly worked out. I’ve had to ask for help on Discord a lot, especially with Supabase.<p>I have this idea for a blog post called “it’s just a CRUD app” that kind of challenges this idea that CRUD apps are brain dead simple. When you look at the myriad of options for building and deploying one. We’re talking like 50+ frameworks. Methodologies like dependency injection, micro service and monolith patterns. Yeah maybe it’s simple if you have been doing it for 15+ years and are comfortable with your stack but if you’re newer to the game, there’s a lot of complexity at play and the best choices for your situation are not obvious. Before moving to Supabase I was using NestJS because I was convinced I needed this framework with guard rails, but I hated it. So moving off that caused a lot of churn.<p>Edit: I also wanted to mention that the biggest split amongst all these recommendations IMO is how the backend and frontend interact with each other. Some of these frameworks will render frontend views for you. Then you&#x27;re dealing with a very classic web app. Then you hear other people in this thread talking about HTTP handlers, and it&#x27;s clear they&#x27;re talking about the backend existing as a REST API, which IMO is a bad pattern to use for your own app. REST APIs should be used for exposing your service to third parties.<p>But there&#x27;s a third way, that&#x27;s becoming popular amongst the &quot;bleeding edge&quot; with things like Next.js and SvelteKit that have a &quot;backend for frontend&quot; where they have to run a node&#x2F;deno based server anyways to do on demand SSR and hydrate. Having a separate backend, especially a separate backend that is just a REST API leads to a ton of redundant code and confusion.<p>So instead with ORMs like Prisma, people setting a persistent DB connection on this backend server and accessing&#x2F;manipulating the DB directly with some kind of client. I think this approach came to prominence alongside the rise of GraphQL. That&#x27;s basically the way Supabase works - they have a JS client and you interact with it in a similar way you would Prisma or TypeORM. They even have an article about how their client can be used in a similar enough way to GraphQL that it&#x27;s not worth using GraphQL instead.<p>Instead of traditional controllers where you would stash a lot of business logic (including authorization), the idea is you leverage PostgreSQL&#x27;s advanced features to help with that. I&#x27;m not a huge fan of this for multiple reasons. So you kind of have to make your own decisions on how much abstraction you&#x27;re going to put on top of their client.
评论 #34535331 未加载
stetsover 2 years ago
Rails!
deweyover 2 years ago
The one you already know.
sagaroover 2 years ago
Flutter + Supabase
ggregoireover 2 years ago
PostgREST, React, AWS
0x008over 2 years ago
Svelte and Pocketbase
greenie_beansover 2 years ago
django + htmx + tailwind css + postgres + docker + render
aramaldarrajiover 2 years ago
Figma or Adobe XD
thewatcher23over 2 years ago
Building an MVP right now. My front-ends are primarily native mobile apps, because it&#x27;s a video chat app. The website is simple React app.<p>My backend is a custom&#x2F;hybrid pattern I&#x27;ve been developing over the last few years which is primarily focused around CQRS + Event Sourcing + DDD.<p>I have a single backend &quot;command interface&quot; (really just a single http endpoint that receives the name of a command + a data payload. think POST the_beam_is_god.com&#x2F;commands { command: &quot;request_login_link_via_email&quot;, data: { email: &quot;snake_case_rulez@aol.com&quot; } }<p>The command names are arbitrarily named based on the needs of my business. I make no concern for the internal code structure of my app with naming commands. This allows business people, frontend people and backend devs to all communicate in english and focussed on the business domain only. It&#x27;s up to my handler function for this specific command to do any business logic validation, etc. If all good, an event is written to a stream (or linked to multiple streams) and the command handler function is done. Its concern ends at the point of publishing an event into a stream (or responding back with a rejection). (note: the events go into postgres, but any store would work as long as you can index on the stream names)<p>The above command example might publish an event called &quot;UserRequestedLoginEmailViaTheApp&quot; into a stream called &quot;LoginActivity:snake_case_rulez@aol.com&quot;. I do lots of small streams of related activity. (related in context of the business logic of my domain).<p>The other half of my system is a series of handler functions that do arbitrary business logic things when events are published. To continue with the example: UserRequestedLoginEmailViaTheApp is mapped to one or more handlers. One obvious handler for this type could queue up the email delivery. I can do anything in these handlers in response to the fact that X activity HAS occurred. Another frequent thing I do in an event handler (I call them Reactors) is play back a domain model stream to get its current state (via a &quot;projection&quot;) and update my (R)ead store. Think &quot;UserUpdatedName&quot; event in a stream called &quot;User:id123&quot;. Command &quot;update_user_name&quot; -&gt; Event gets published -&gt; Reactor reacts and pushes a new version (current state) of this user into the [mongo] users collection -&gt; then a subscriber process (elixir genserver) to the mongo oplog reacts and pushes the new version of this user down a websocket to provide live data updates to any apps&#x2F;frontends.<p>Maybe this sounds complex and bloated at first read, but my codebase boilerplate is ridiculously small, a few dozen lines. What&#x27;s cool too is that this can be done in any language&#x2F;runtime environment.<p>I started doing this in ruby in 2019, but as I was getting up to speed on elixir I realized that the beam mapped perfectly to this strategy. CQRS itself is merely a higher level execution of the actor model (the beam) itself. Upon realizing this, I actually attempted to shoe-horn my pattern here into the GenStage architecture. I did get it to work, but I did not continue down that road.<p>I could talk about this for days because I love it so much.<p>bonus: no inheritance, no dependency injection, no interfaces, no wanting to quit and become a farmer because of the insanity of complex OOP
评论 #34731542 未加载
falkensmaz3over 2 years ago
MOS 6502 ML
aramaldarrajiover 2 years ago
Figma
digvalleyover 2 years ago
- NextJS<p>- Tailwind<p>- Hasura &#x2F; postgres<p>- DigitalOcean - docker droplet<p>- Caddy<p>- Cloudflare
caseyfover 2 years ago
Rails
davidkuennenover 2 years ago
Database: Postgres<p>Backend: Go<p>Frontend: React<p>App: Flutter
redbar0nover 2 years ago
I&#x27;d likely go for a mobile first approach and start with:<p>create-universal-app : <a href="https:&#x2F;&#x2F;github.com&#x2F;chen-rn&#x2F;CUA">https:&#x2F;&#x2F;github.com&#x2F;chen-rn&#x2F;CUA</a><p>Which would give me: - Tamagui - React Native Web Lite - Expo - Next - Solito - Prisma – Clerk - tRPC<p>But I&#x27;d likely throw out Clerk for a cheaper option:<p>- Supertokens, since it&#x27;s also easy (lots of enthusiastic reports about it), has a managed solution (which is cheaper than the alternatives), is secure and scalable (rotating refresh tokens with JWTs), open source, offers passwordless &#x2F; magic links, and the architecture of Supertokens would allow me to simply and quickly eject to self-hosting it if&#x2F;when I&#x27;d eventually need to (if the app ever reaches mass-market scale).<p>And I might throw out tRPC for the equivalent GraphQL and TypeScript inference experience (esp. if business strategy dictates I need a 3rd party API):<p>- GQty.dev on the client, for inferred queries&#x2F;mutations. For rapid dev speed. Simple code example: <a href="https:&#x2F;&#x2F;gqty.dev&#x2F;docs&#x2F;intro" rel="nofollow">https:&#x2F;&#x2F;gqty.dev&#x2F;docs&#x2F;intro</a> Then move to URQL or Relay at scale, or just skip GQty and go with URQL from the start (if scalability trumps dev speed).<p>- Pothos <a href="http:&#x2F;&#x2F;pothos-graphql.dev" rel="nofollow">http:&#x2F;&#x2F;pothos-graphql.dev</a> on the server, for auto building the schema from your TS code (aka. code-first). Better than Nexus (e.g. Max Stoiber moved from Nexus to Pothos on his Bedrock starter template because Pothos is best in class: <a href="https:&#x2F;&#x2F;bedrock.mxstbr.com&#x2F;tools&#x2F;pothos&#x2F;" rel="nofollow">https:&#x2F;&#x2F;bedrock.mxstbr.com&#x2F;tools&#x2F;pothos&#x2F;</a> ).<p>And I might throw out NextJS (Webpack) for the equivalent experience in Vite:<p>- vite-plugin-ssr, since both architectural control (libraries &gt; frameworks) and Vite rocks. I&#x27;d likely then have to make solito-vite <a href="https:&#x2F;&#x2F;github.com&#x2F;nandorojo&#x2F;solito&#x2F;discussions&#x2F;157">https:&#x2F;&#x2F;github.com&#x2F;nandorojo&#x2F;solito&#x2F;discussions&#x2F;157</a> to have a unified navigation between React Native and Web, but Solito is allegely tiny, so recreating it should be doable.<p>(If doing all of these replacements, maybe starting from scratch would be easier than modifying create-universal-app ... That said, I think if someone made a starter repo with the above choices it would be a real killer!)<p>Then I&#x27;d also likely use:<p>- Vercel (and try their Edge Functions, for a serverless sweet v8 isolates experience without slow cold starts), or maybe Cloudflare Workers (cheaper, slightly more hassle?) for hosting.<p>- Planetscale or Supabase for the DB. (Not brave enough to try EdgeDB or SurrealDB just yet, though EdgeDB is close..) Unless I had a specific use case where a more specialized&#x2F;optimized DB would make sense.<p>This stack should stick even post-MVP, as it&#x27;s not only optimized for a solo developer but for scalability.
KronisLVover 2 years ago
Hosting: probably one of the more affordable VPS providers out there, like Contabo, Hetzner, or in my case Time4VPS. Homelab servers (just boxes with Debian&#x2F;Ubuntu) for dev&#x2F;testing environments at first. Probably some popular OS like Ubuntu for the remote servers as well, just because of how easy such a setup is to get from any provider.<p>Runtimes: OCI containers with Docker, there are other options out there as well, but this one is stable and boring, plus makes deployments easy. Probably at least something like Docker Compose or maybe Docker Swarm (more or less uses the same format) to orchestrate stuff across multiple nodes and take care of networking, if needed. Maybe Portainer for easier management. Can later move to Nomad or Kubernetes if needed, but the previous options are good enough.<p>Databases: probably MariaDB&#x2F;PostgreSQL for relational data, if needed then MongoDB as a document store, MinIO (S3 compatible) for any larger binary blobs, Redis for key-value storage and RabbitMQ for queues. Admittedly, in most cases you won&#x27;t need that much more than just a single relational DB instance, unless you have particular workloads to deal with. Honestly, even SQLite can be a good starting point for a single node deployment.<p>Back end: honestly, any of the most popular languages out there. Java (either Dropwizard or Spring Boot) or .NET (ASP.NET) for good performance and rich ecosystems, Go for small statically linked executables, Python for packages to do basically anything (most likely Flask&#x2F;Django in webdev), Ruby for particular CRUD setups (with Rails), Node (most likely with Express.js) for getting up and running relatively quickly. Personally, I&#x27;d opt for static type systems when not in too much of a hurry, but also recognize the benefits of any of the options listen. Frankly, they&#x27;re all good enough, so just pick whatever feels suitable for the problems you want to solve. Even PHP with Laravel is viable nowadays.<p>API design: probably something RESTful, though some like GraphQL (personally, I think that it brings a certain amount of complexity with it), in rare cases would also go for something like gRPC or also WebSocket stuff, though again it depends on what you&#x27;re building.<p>Front end, server side rendering: if you decide not to make a RESTful API but are okay with server side rendering (certain Django, Rails, Laravel setups, for example), then you won&#x27;t have to think about this too much. In those cases, I&#x27;d just throw in something like Bootstrap and maybe something to make dealing with JS easier.<p>Front end, SPA: However if you&#x27;re building a SPA (which is great because you can swap out front ends or use it for other stuff, not just the current UI) then I&#x27;d recommend you look in the direction of Vue 3 + a component framework&#x2F;library like PrimeVue. Angular does TypeScript really well but is cumbersome to work with, React seems to get more and more complex with every release, whereas Vue does everything from hooks to recommended state management solutions (like Pinia) well and without too much accidental complexity. I&#x27;d pick the component framework&#x2F;library because making your own is sometimes a waste of time. I&#x27;d consider TailwindCSS, but not always.<p>Web servers: personally I&#x27;d go with Apache for my own reasons (modules for most stuff), but Caddy is also excellent. Nginx is also good, but doesn&#x27;t do ACME certs out of the box, although setting up certbot isn&#x27;t too hard. I&#x27;ve written on my blog about using Apache, actually: <a href="https:&#x2F;&#x2F;blog.kronis.dev&#x2F;tutorials&#x2F;how-and-why-to-use-apache-httpd-in-2022" rel="nofollow">https:&#x2F;&#x2F;blog.kronis.dev&#x2F;tutorials&#x2F;how-and-why-to-use-apache-...</a> and about Nginx as a reverse proxy.<p>Day 2 concerns: I&#x27;d also look into Matomo analytics if the MVP gets popular, as well as Zabbix for server monitoring, Uptime Kuma for uptime monitoring, maybe way later something like Graylog for log shipping and Apache Skywalking for APM&#x2F;tracing. For managing nodes, Ansible can be a good bet later.<p>So it might look like: Ubuntu + Docker + MariaDB + Ruby + Rails.<p>It might also look like: Ubuntu + Docker + PostgreSQL + Node + Express.js + REST + Vue + PrimeVue.<p>Or any other number of combinations. It&#x27;s hard to go completely wrong nowadays. Cloud options are also nice, but personally I like being able to run basically the same thing both locally and on a server somewhere. Actually, I had a somewhat related blog post about this, &quot;How boring or novel should your technology choices be&quot;, too: <a href="https:&#x2F;&#x2F;blog.kronis.dev&#x2F;articles&#x2F;how-boring-or-novel-should-your-technology-choices-be" rel="nofollow">https:&#x2F;&#x2F;blog.kronis.dev&#x2F;articles&#x2F;how-boring-or-novel-should-...</a>
traversedaover 2 years ago
Depends on exactly what I&#x27;m making, the answer is probably different if I&#x27;m making like a chat app or something more data centric.<p>For something really minimal, an internal tool, I&#x27;d probably use grist. Grist is a &quot;no code&quot; spreadsheet program that is open source and works on a relational database. I just threw together an inventory management system for my weekly dnd group in a few minutes, and I&#x27;ve shared it with the group. I find the relational mindset grist uses a lot easier to reason about than traditional spreadsheets.<p>The next level up would be django with htmx. Very minimal javascript, I might embed a javascript &quot;applet&quot; like a map into it if needed. This covers 99% of data driven apps.<p>If I wanted to build something like say discord I&#x27;d probably use a pretty similar stack for the MVP, but with server-sent-events (htmx with server sent events is nice) and web components for more complicated interactions. That&#x27;s probably why I&#x27;m not in charge for building complicated single page webapps with a lot of interdependent state though. I maintain this approach should work but haven&#x27;t had a real chance to test it in the wild.<p>If I&#x27;m writing CAD software I&#x27;m probably going with QT&#x2F;python&#x2F;(numpy&#x2F;jax&#x2F;compute-shaders&#x2F;sympy&#x2F;etc). Python might not be the fastest, but when you&#x27;re accelerating it with one of those machine learning libraries it can be really powerful. I&#x27;ve actually been working on something CAD-ish using that stack here: <a href="https:&#x2F;&#x2F;github.com&#x2F;traverseda&#x2F;PySdfScad">https:&#x2F;&#x2F;github.com&#x2F;traverseda&#x2F;PySdfScad</a><p>That&#x27;s probably roughly the same stack I&#x27;d use for things like computer vision, machine learning, etc. Ironically anything where performance is important I&#x27;d probably choose python over a compiled language.<p>Mind you the QT python documentation is really not great, for a really minimal MVP I might swap qt out for pyimgui which is amazing for rapid prototyping but is going to be a real pain to do things like syntax highlight a text editor or embed HTML content.<p>Embedded electronics? Probably micropython on an ESP32 for an MVP. A REPL on your microcontroller is really nice. Robotics I&#x27;d probably use buildroot to build a custom linux distro. ROS is pretty heavy and I find it gets in the way a lot, but if you need ROS stuff obviously use ROS.<p>I don&#x27;t have much experience with mobile development, so I&#x27;d probably end up using QT with python and pyqtdeploy, but that&#x27;s not an approach I&#x27;d recommend anyone else follow. I&#x27;m keeping an eye on Tauri in that space, although I really wish they made it easier to bundle in things that aren&#x27;t single page javascript web apps (like a python application).<p>So yeah, mostly I&#x27;d use python. Master of some trades, jack of a bunch of others, it&#x27;s flexible and powerful enough that I feel happy to have specialized in it, even if deploying apps to end users can be finicky and annoying. I&#x27;d avoid the javascript ecosystem as much as possible, and where I&#x27;d have to use javascript I&#x27;d prefer to make self-contained web components.
gardenhedgeover 2 years ago
Remix Run
andronov04over 2 years ago
supabase+svelte or nextjs
nathiasover 2 years ago
svelte, supabase, lambdas
giraffe_ladyover 2 years ago
janet, sqlite, and htmx.
hankchinaskiover 2 years ago
nocode