After a bit of research in the past couple of days I'm come to a conclusion of a new tech stack that I like. Here are the details:
bun
runtime, TypeScript for all source code- Using ElysiaJS for the server and routing
- Render HTML on server, use JSX for templating, use the React
renderToString
function to convert JSX to HTML - A single
index.tsx
for server logic, have apages
directory for templates - Styling is done with Tailwind
- Use
htmx
for any interactivity that's needed - Run
sqlite
in cloud compute and locally, use thebun:sqlite
standard library and write raw SQL to query - Use cookies and sessions for auth
- Use cloud compute and nginx for deployment
- Run
prettier
to format code
This repo is a great "starter" to initialise with all of these settings ready to go.