This project is a modern reimplementation of the famous Flask Mega-Tutorial by Miguel Grinberg, rebuilt from the ground up using a modern full-stack JavaScript ecosystem:
- Frontend: SvelteKit
- Styling: TailwindCSS
- Backend API: Hono (lightweight web framework for Node.js and Deno)
- Database: SQLite via Drizzle ORM
This project aims to:
- Explore how the concepts in the Flask Mega-Tutorial map to a modern frontend/backend-separated architecture.
- Use best practices with SvelteKit for building reactive, modern UIs.
- Leverage Hono for blazing-fast API handling and middleware.
- Integrate TailwindCSS for utility-first styling.
- Persist and query data efficiently with SQLite.
- Learn modern full-stack development by rebuilding a classic tutorial.
/
│── web/ # SvelteKit frontend app
│── api/ # Hono API backend
└── README.md # You're here
Both the frontend (SvelteKit) and backend (Hono) projects use environment variables to store sensitive or environment-specific configuration. You'll need to create .env files in each app directory.
PORT=3000
DATABASE_URL=./microblog.db
JWT_SECRET_KEY=your-super-secret-key
CORS_ORIGIN=http://localhost:5173
VITE_API_BASE_URL=http://localhost:5000
- Clone the repo
git clone https://github.com/artisansco/microblog.git
cd microblog
- Install deps You'll need Node.js (18+).
npm install # installs all deps in both folders
- Initialize/seed db
cd api
# Run migration or init script
npm run db:seed
- Run/start dev servers
# In one terminal
cd api
npm run dev
# In another terminal
cd web
npm run dev
The frontend is at http://localhost:5173 and the backend at http://localhost:5000.