For production deployments, use our Docker Compose setup instead.
Prerequisites
Step 1: Clone the Repository
Step 2: Install Dependencies
Install all project dependencies using npm workspaces:DeployStack uses npm workspaces to manage dependencies across frontend and backend services. The root
npm install will install dependencies for all services.Step 3: Set Up Environment Variables
Backend Environment
Create the backend environment file:services/backend/.env with your configuration:
Frontend Environment
Create the frontend environment file:services/frontend/.env with your configuration:
Generate Encryption Secret
Step 4: Start PostgreSQL Database
DeployStack uses PostgreSQL as its database backend. For local development, we provide a convenient script to start PostgreSQL in Docker:- Pull PostgreSQL 18 Docker image
- Create a local PostgreSQL container with default credentials:
- Host: localhost
- Port: 5432
- Database: deploystack
- User: deploystack
- Password: deploystack
- Create a persistent volume for database data
The PostgreSQL container will persist data between restarts. To reset the database, remove the
postgres_data volume: docker volume rm postgres_dataVerify PostgreSQL is Running
Step 5: Running the Development Servers
DeployStack requires both frontend and backend services to run simultaneously.Option 1: Separate Terminals (Recommended)
Run each service in its own terminal for better log visibility:Option 2: Background Processes
Run both services from a single terminal:Development URLs
Once both services are running:- Frontend: http://localhost:5173 (Vite dev server)
- Backend API: http://localhost:3000 (Fastify server)
- API Documentation: http://localhost:3000/documentation (Swagger UI)
Step 6: Verify Installation
1
Check Service Status
Verify both services are running:
2
Access the Application
Open http://localhost:5173 in your browser. You should see the DeployStack interface.
3
Complete Setup Wizard
Follow the on-screen setup wizard to:
- Configure PostgreSQL database connection
- Create your first admin user
- Set up basic platform settings
Development Workflow
Hot Reloading
Both services support hot reloading:- Frontend: Vite automatically reloads on file changes
- Backend: Nodemon restarts the server on file changes
Available Scripts
From the project root:Project Structure
Troubleshooting
Common Issues
Port Already in Use
Node Version Issues
Permission Errors
PostgreSQL Connection Issues
Environment Variable Issues
Getting Help
If you encounter issues not covered here:- Check Logs: Look at the console output from both frontend and backend servers
- Search Issues: Look for similar problems in GitHub Issues
- Community Support: Ask for help in our Discord
- Create Issue: Report bugs with detailed logs and system information
Contributing
Once you have DeployStack running locally:- Read Contributing Guidelines: Check CONTRIBUTING.md
- Create Feature Branch:
git checkout -b feature/amazing-feature - Make Changes: Implement your feature or bug fix
- Test Changes: Run tests and verify functionality
- Submit Pull Request: Create a PR with detailed description
Next Steps
- Explore the Codebase: Familiarize yourself with the project structure
- Read API Documentation: Check the backend API docs at http://localhost:3000/documentation
- Join Development Discussions: Participate in our Discord development channels
- Check Open Issues: Find issues to work on in our GitHub repository
Ready to contribute? Check our Contributing Guidelines to get started!

