Pretty straightforward infra-as-code -- this spec is basically all the documentation you need https://render.com/docs/blueprint-spec
It’s easy to deploy on a droplet using the DO scripts, and the droplets can be as cheap as you want them to be with the ability to easily scale up.
If you outgrown the biggest droplet size… congratulations! You made it!
1. Host the complete React/Vue/static site of choice on netlify
2. Host the backend on AWS. I used to use ECS+Fargate, which means you just create a docker container, open some ports, and git push, but now it's even easier with AWS AppRunner. If you didn't want to touch AWS (it gets hairy fast), I would use something like PlanetScale or CockroachDB which have generous free tiers. From there you have a github action to push your container to your AWS ECR and AppRunner automatically redeploys your app. The only other platform that I think comes close to "I have my code just host it, and make sure it's redundant" is Fly.io
It's a lot more complicated than anything reasonable about deploying a webapp. Any shared hosting solution or deployment platform (think fly/shuttle) will be cheaper and easier to reason about. Even selfhosting on a rented VM or dedicated server and configuring auto-updates and maintenance windows will be much easier.
By going to netlify/AWS you are now tying the destiny of your app to two megacorps, doubling the risk of downtime (and cloud uptime is certainly not as good as dedicated) and other bugs.
Hosting is dirt cheap, fixed cost, and it's just an rsync away from being deployed.
- frontend is ReactJs/ Typescript - Auto deployed on Netlify - backend in Express/Nodejs / Typescript - Deployed on Google Cloud Run - AI is usually in python running on Compute Engine VMs - Database auth is Supabase
I master these tools and more importantly, know their limitations. This way I can spin up a new project in days without surprises
Maybe it’s because I’m not an AWS expert anymore but frankly I don’t want to be. I don’t care. I want to spend my time figuring out the business logic of the app, not tuning obscure IAM configurations so that one part of my app can talk to another.
What I want: take my flask app or node app and my frontend files and run it from a temp url. Include some hosted db. If everything looks good, sell me a domain name. Bonus points if this can be done from terminal like surge.sh can for frontends. And let me cap my monthly spend.
I noticed that one of the apps uses Netlify, are there better options or is that generally considered the best?