Surreal Engine combines the power of Three.js and Stable Diffusion XL Turbo to create a unique procedural art sandbox. SE effectively employs a neural renderer for visual art pieces.
- Procedural art generation using Three.js
- Python backend for complex computations
- Integration with SDXL Turbo for neural rendering
- Real-time visual output
- Node.js
- Python 3.x
- SDXL Turbo
- Clone the repository
git clone https://github.com/yourusername/surreal-engine.git cd surreal-engine
- Navigate to the Backend directory with
cd backend
poetry shell
poetry install
python sdxl_turbo_server.py
- Navigate to the Frontend directory with
cd frontend
npm install
npm run build
npm start
- Access the frontend on http://localhost:8080.
- Build the project
docker-compose build
- Start the application
docker-compose up
The backend uses a lot of memory (16GB+) so you'll need to ensure that Docker Desktop has enough allocated, as well as consider hacking CUDA support (maybe I'll work on this soon).
When you first build and run the program, it can take up to 10 minutes for the backend to download the SDXL model and dependencies. However, these will be cached for each subsequent run.
We welcome contributions to Surreal Engine! Here's how you can help:
- Fork the repository
- Create a new branch (
git checkout -b feature/AmazingFeature
) - Make your changes
- Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE.md file for details.