Modern blog platform built with React and Hono.js
- ⚛️ React with Vite
- 🛣️ React Router for navigation
- 🎨 Material UI for components
- 🔄 Axios for API calls
- 🎯 Hono.js - Web Framework
- 🔋 Prisma - ORM
- 🗄️ Neon DB - Postgres Database
- 🔑 JWT - Authentication
-
Initial Setup
- Backend initialization
- Handler configuration
-
Database
- Prisma setup
- Schema design
- Client initialization
-
API Routes
- Authentication
- Blog endpoints
- Middleware
- Testing
-
Setup & Auth
- Router configuration
- Auth components
- Sign up/in implementation
- Testing
-
Blog Features
- Blog components
- Navigation bar
- Backend integration
- Full blog view
- Publishing interface
-
UI Polish
- Loading states
- Deployment
- GitHub push
cd backend
npm install
cp .env.example .env
npx prisma generate
npx prisma db push
npm run dev
cd frontend
npm install
cp .env.example .env
npm run dev
DATABASE_URL="neon-db-connection-string"
JWT_SECRET="jwt-secret"
VITE_API_URL="backend-url"
- User registration
- Login/Logout
- JWT token management
- View all blogs
- Read full blog
- Create new blog
- Edit/Delete blogs
- Loading states
GET /api/posts
- List blogsGET /api/posts/:id
- Single blogPOST /api/auth/register
- RegisterPOST /api/auth/login
- Login
POST /api/posts
- Create blogPUT /api/posts/:id
- Update blogDELETE /api/posts/:id
- Delete blog
# Backend tests
cd backend && npm test
# Frontend tests
cd frontend && npm test
- Server-side connection pooling
- React component optimization
- Loading states for better UX
MIT
Made with ❤️ using React & Hono.js