Project:
express-api
Short: Yengil, xavfsiz va kengaytiriladigan Express.js API shabloni — ishlab chiqishdan to deploy gacha.
Bu repo — Node.js + Express asosida yozilgan RESTful API shabloni. Maqsad: tez boshlash, xavfsizlik va yaxshi tartib (structure) bilan ishlab chiqish. Ichida: logging, error-handling, env konfiguratsiyasi, Docker, testlarni ishga tushirish uchun tayyor qismlar mavjud.
- Express 18 asosiy arxitektura
- Environment konfiguratsiyasi (
dotenv
) - Helmet, CORS, rate limiting kabi xavfsizlik middleware'lari
- Request logging (morgan yoki winston)
- Centralized error handler
- JWT asosida autentifikatsiya (misol)
- MongoDB (Mongoose) yoki SQL (Prisma) qoʻllab-quvvatlanadi (misollar)
- Docker + docker-compose konfiguratsiyasi
- Jest + Supertest uchun test skeleti
- GitHub Actions CI (test + lint)
- Node.js (LTS recommended, masalan
>=18
) - npm yoki pnpm/yarn
- (Agar DB kerak bo'lsa) MongoDB yoki PostgreSQL
- Docker (agar konteynerda ishga tushirishni xohlasangiz)
- Repo nusxalash:
git clone https://github.com/<youruser>/express-api.git
cd express-api
npm install
# yoki
pnpm install
# yoki
yarn
PORT=4000
NODE_ENV=development
DATABASE_URL=mongodb://localhost:27017/express-api
JWT_SECRET=changeme_to_a_strong_secret
JWT_EXPIRES_IN=7d
LOG_LEVEL=info
/src
/config # konfiguratsiya (db, jwt, logger)
/controllers # route handlerlar
/routes # express marshrutlar
/models # Mongoose yoki ORM modellari
/middlewares # auth, error, rate-limit va hokazo
/services # biznes logika
/utils # yordamchi funksiyalar
index.js # server entry
/tests
/integration
/unit
.env.example
Dockerfile
docker-compose.yml
README.md