A virtual world platform where users can interact, customize their avatars, and explore different spaces.
- User authentication and registration
- Avatar customization
- Real-time movement and interaction
- Multiple customizable spaces
- Interactive elements
- WebSocket-based communication
- Admin dashboard
- Django
- Django REST Framework
- Channels (WebSockets)
- PostgreSQL
- Redis
- React
- TypeScript
- Phaser.js
- Material-UI
- Python 3.8+
- Node.js 14+
- PostgreSQL
- Redis
- Create a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Set up environment variables:
cp .env.example .env
# Edit .env with your configuration- Run migrations:
python manage.py migrate- Create a superuser:
python manage.py createsuperuser- Install dependencies:
cd frontend
npm install- Start the development server:
npm start- Start the backend server:
python manage.py runserver- Start the frontend development server:
cd frontend
npm start- Access the application at
http://localhost:3000
- POST
/api/auth/register/- Register a new user - POST
/api/auth/login/- Login and get JWT tokens
- GET
/api/spaces/all/- List all spaces - POST
/api/spaces/new/- Create a new space - DELETE
/api/spaces/delete/<id>/- Delete a space
- GET
/api/avatars/<id>/- Get avatar details - POST
/api/admin/avatar/new/- Create a new avatar (admin only)
- POST
/api/admin/element/new/- Create a new element (admin only) - PUT
/api/admin/element/update/<id>/- Update an element (admin only)
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m '✨ feat: add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.