4.0 KiB
4.0 KiB
Duxiter
A comprehensive business evaluation and monitoring platform.
Quick Start
Prerequisites
- Node.js (v18+)
- Docker and Docker Compose
Setup
-
Clone the repository
git clone <repository-url> cd duxiter -
Start Docker services
sudo docker-compose up -d -
Install dependencies
# Frontend npm install # Backend cd server npm install cd .. -
Start development servers
# Frontend (in one terminal) npm run dev # Backend (in another terminal) cd server npm run dev -
Access the application
- Main Application:
http://localhost/(via nginx proxy) - RabbitMQ Management:
http://localhost/rabbitmq/ - Health Check:
http://localhost/health
- Main Application:
Services
Docker Services
This project uses Docker containers for:
- MongoDB: Database (Port 27017)
- RabbitMQ: Message broker (Port 5672, Management UI: 15672)
For detailed Docker services documentation, see DOCKER_SERVICES.md
Nginx Proxy
Nginx is configured as a reverse proxy to handle:
- Frontend: Proxies to Vite dev server (Port 5173)
- Backend API: Proxies
/api/to Express server (Port 3000) - RabbitMQ Management: Proxies
/rabbitmq/to management UI (Port 15672) - Health Check: Built-in
/healthendpoint - Static Assets: Optimized caching and compression
Access the application through nginx at http://localhost/
For detailed nginx configuration, see NGINX_PROXY.md
Application Structure
- Frontend: React + TypeScript + Vite
- Backend: Node.js + TypeScript + Express
- Database: MongoDB
- Message Queue: RabbitMQ
Development
Frontend Development
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run lint # Run ESLint
npm test # Run tests
Backend Development
cd server
npm run dev # Start development server
npm run build # Build TypeScript
npm start # Start production server
Project Structure
duxiter/
├── src/ # Frontend source code
│ ├── components/ # React components
│ ├── pages/ # Page components
│ ├── services/ # API services
│ ├── types/ # TypeScript types
│ └── utils/ # Utility functions
├── server/ # Backend source code
│ └── src/ # Server TypeScript source
├── public/ # Static assets
├── tools/ # Development tools
├── MCP/ # MCP server implementation
├── docker-compose.yml # Docker services configuration
└── DOCKER_SERVICES.md # Docker services documentation
Environment Configuration
Create .env files for environment-specific configuration:
Frontend (.env)
VITE_API_URL=http://localhost:3000
VITE_APP_NAME=Duxiter
Backend (server/.env)
PORT=3000
MONGODB_URI=mongodb://admin:password123@localhost:27017/duxiter?authSource=admin
RABBITMQ_URL=amqp://admin:password123@localhost:5672
JWT_SECRET=your-jwt-secret
Documentation
- Docker Services Setup - Comprehensive guide for MongoDB and RabbitMQ
- Nginx Proxy Configuration - Reverse proxy setup and management
- Project Description - Detailed project overview
- Version Comparison - Feature comparison between versions
- SendGrid Setup - Email service configuration
Scripts
dux_front.sh- Frontend development scriptserver/dux_server.sh- Backend development script
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and linting
- Submit a pull request
License
[Add your license information here]