Prerequisites
Before starting development, ensure you have:Node.js 18+
Download from nodejs.org
Docker Desktop
Required for local services
Git
For version control
Code Editor
VS Code recommended
Initial Setup
Fork Repository
Fork voxora-cloud/voxora on GitHub
Development Workflow
Daily Development
Making Changes
Development Tools
VS Code Extensions
Install these recommended extensions:.vscode/extensions.json
VS Code Settings
Create.vscode/settings.json:
Git Hooks
Set up pre-commit hooks with Husky:package.json:
Hot Reloading
Web App (Next.js)
Next.js automatically hot reloads on file changes:- Fast Refresh: Preserves component state
- Turbopack: Ultra-fast bundling (Next.js 15)
- Instant Updates: See changes immediately
API Server (Express)
API uses nodemon for auto-restart:package.json
Database Management
MongoDB
Access MongoDB via:- Mongo Express
- MongoDB Compass
- CLI
Web UI at http://localhost:8081
- Username:
admin - Password:
pass
Redis
- Redis CLI
- Redis Commander
Testing
Run Tests
Writing Tests
Example test structure:__tests__/api/auth.test.js
Debugging
VS Code Debug Configuration
Create.vscode/launch.json:
Server Logs
Enable detailed logging:apps/api/.env
Environment Variables
Required Variables
- apps/api/.env
- apps/web/.env
Common Tasks
Add a New Dependency
Update Dependencies
Clean & Rebuild
Troubleshooting
Port already in use
Port already in use
Find and kill the process:
Docker issues
Docker issues
Reset Docker:
Module not found
Module not found
Clear and reinstall:
Database connection error
Database connection error
Verify MongoDB is running:Check connection string in
.envNext Steps
Environment Variables
Complete environment configuration guide
Docker Services
Managing local Docker services
Scripts Reference
All available npm scripts
Contributing
How to contribute to Voxora