- Updated the MeStatusService to include a safe method for fetching residence card verification, improving error handling and providing a fallback response in case of failures. - Refactored the ResidenceCardService to utilize a normalization utility for date handling and improved payload validation, ensuring consistent and safe responses from Salesforce. - Enhanced logging for error scenarios to aid in debugging and maintainability. - Updated the Next.js configuration to allow direct API calls, providing a solution to bypass Next's internal dev proxy and avoid deprecation warnings. - Expanded documentation to guide users on configuring the environment for development.
2.5 KiB
2.5 KiB
Quick Reference: Development & Production
For detailed setup instructions, see GETTING_STARTED.md
Development Commands
# Initial setup
cp .env.dev.example .env && pnpm install
# Daily development
pnpm dev:start # Start services (PostgreSQL + Redis)
pnpm dev # Start apps with hot reload
# Database management
pnpm dev:migrate # Run database migrations
pnpm db:studio # Open Prisma Studio (database GUI)
pnpm dev:tools # Admin tools (Adminer + Redis Commander)
# Service management
pnpm dev:status # Check service status
pnpm dev:logs # View service logs
pnpm dev:restart # Restart services
pnpm dev:stop # Stop all services
pnpm dev:reset # Reset development environment
# Code quality
pnpm lint # Run linting across all packages
pnpm type-check # Run TypeScript checks
pnpm format # Format code with Prettier
Default Ports
- Frontend: http://localhost:3000 (configurable via
NEXT_PORT) - Backend: http://localhost:4000 (configurable via
BFF_PORTorPORT) - Adminer: http://localhost:8080 (when using
pnpm dev:tools) - Redis Commander: http://localhost:8081 (when using
pnpm dev:tools)
Hiding Next dev proxy deprecation warnings (Portal ➝ BFF)
If you see Node warnings like (node:...) [DEP0060] DeprecationWarning: The util._extend API is deprecated, they typically come from Next's internal dev proxy used for rewrites() (see apps/portal/next.config.mjs).
The preferred fix is to bypass the Next rewrite-proxy and call the BFF directly via CORS:
- Portal: set
NEXT_PUBLIC_API_BASE=http://localhost:4000 - BFF: set
CORS_ORIGIN=http://localhost:3000
Then restart pnpm dev.
Production Commands
For detailed deployment guide, see DEPLOY.md
# Setup
cp .env.production.example .env # Edit with production values
# Deploy
pnpm prod:deploy # Build + start + migrate
# Management
pnpm prod:status # Check service status
pnpm prod:logs # View service logs
pnpm prod:update # Update deployment
pnpm prod:restart # Restart services
pnpm prod:stop # Stop services
pnpm prod:backup # Backup data
pnpm prod:cleanup # Clean up old resources
Production Endpoints
- Portal: https://yourdomain.com
- API: https://yourdomain.com/api
- Health: https://yourdomain.com/healthz
Security Notes
- Nginx enforces HTTPS, HSTS, CSP and rate limiting
- Backend disables
x-powered-by, supportstrust proxy - Never commit
.envfile - keep secrets secure