- Node.js: >= 18.0.0
- pnpm: >= 8.0.0 (khuyến nghị >= 9.0.0)
- PostgreSQL: >= 14
- Git: Latest version
git clone https://github.com/DuyITLOR/QualiCare_AI.git
cd QualiCare_AI# Cài pnpm globally
npm install -g pnpm
# Hoặc dùng npm
npm install -g pnpm@latest# Đăng nhập PostgreSQL
psql -U postgres
# Tạo database
CREATE DATABASE qualicare_db;
# Tạo user (optional)
CREATE USER qualicare_user WITH PASSWORD 'your_password';
GRANT ALL PRIVILEGES ON DATABASE qualicare_db TO qualicare_user;
# Exit
\qcd server
cp .env.example .envChỉnh sửa file server/.env:
PORT=5050
DATABASE_URL="postgresql://qualicare_user:your_password@localhost:5432/qualicare_db?schema=public"
JWT_SECRET="your-super-secret-jwt-key-min-32-characters"
GEMINI_API_KEY="your-gemini-api-key"cd ../client
cp .env.example .envFile client/.env mặc định:
VITE_API_BASE="http://localhost:5050"Từ thư mục root:
cd ..
pnpm installLệnh này sẽ tự động:
- Cài đặt dependencies cho tất cả workspaces
- Generate Prisma Client
- Setup monorepo
# Run Prisma migrations
pnpm --filter server migrate
# Hoặc
cd server
pnpm migrate# From root
pnpm typecheck# Terminal 1 - Start server
pnpm dev:server
# Kiểm tra: http://localhost:5050/health
# Nên thấy: {"status":"OK","message":"QuailCare AI Server is running"}# Terminal 2 - Start client
pnpm dev:client
# Mở browser: http://localhost:5173Từ thư mục root, chạy cả client và server:
pnpm devHoặc chạy riêng:
# Terminal 1 - Server
pnpm dev:server
# Terminal 2 - Client
pnpm dev:clientXem hướng dẫn trong devices/README.md
pnpm install
pnpm --filter server generate- Kiểm tra PostgreSQL đang chạy
- Xác nhận DATABASE_URL trong
.env - Test connection:
psql postgresql://...
# Tìm process đang dùng port 5050
lsof -i :5050
# Kill process
kill -9 <PID>cd server
pnpm prisma generate
pnpm prisma migrate dev- ✅ Tạo tài khoản qua
/registerendpoint - ✅ Login và lấy JWT token
- ✅ Test chat với AI
- ✅ Connect IoT devices (optional)
# Development
pnpm dev # Chạy tất cả
pnpm dev:client # Chỉ client
pnpm dev:server # Chỉ server
# Build
pnpm build # Build tất cả
pnpm build:client # Build client
pnpm build:server # Build server
# Database
pnpm prisma:generate # Generate Prisma Client
pnpm migrate # Run migrations
# Type checking
pnpm typecheck # Check types tất cả packages
# Linting
pnpm lint # Lint code
# Clean
pnpm clean # Xóa node_modules và build filesXem hướng dẫn deployment trong DEPLOYMENT.md (coming soon)
Nếu gặp vấn đề, hãy:
- Check issues trên GitHub
- Tạo issue mới với log chi tiết
- Liên hệ qua email/Discord
Happy Coding! 🎉