I run a data warehouse for sports data, with a web frontend. Lots of integrations with 3rd party APIs to pull in data.
Monster server (128GB RAM, 18 core) on Hetzner ($60/mo). CloudFlare to front everything to add a little extra security mostly - I only allow my home IP and CF to connect directly to the app/db/web server.
* MySQL, because one key source has a library that ingests easily to MySQL
* Postgres for the main warehouse and app data (fdw to pull in MySQL data)
* Django for the webapp, with celery and redis for async jobs
* SES for email
* Prefect (vs Airflow) for running data ingestion/transform jobs
* DBT (triggered by prefect) for transform jobs
* Netlify for the static site frontend, jekyll for static site gen
* Google Analytics