Platform for wafer.space low cost silicon manufacturing.
License: Apache Software License 2.0
This project includes a comprehensive Makefile for development workflow automation. To see all available commands:
make help# Install uv package manager (if not already installed)
make install
# Create virtual environment and install dependencies
make venv
# Run database migrations
make migrate
# Create a superuser account
make createsuperuser
# Start the development server
make runserver# Create new migrations
make makemigrations
# Apply migrations
make migrate
# Reset database (WARNING: Deletes all data!)
make db-reset
# Create superuser
make createsuperuser# Run all tests
make test
# Run tests with verbose output
make test-verbose
# Run tests in parallel (faster)
make test-fast
# Run tests for specific app
make test-app APP=projects
# Run tests with coverage report
make test-coverage
# Generate HTML coverage report
make test-coverage-html
# Run only previously failed tests
make test-failedBrowser tests use Selenium WebDriver to test the application's UI functionality across different browsers and viewports. Tests include homepage navigation, authentication flows, responsive design, and performance metrics.
# Run browser tests with Chrome (visible mode)
make test-browser
# Run browser tests in headless mode (for CI)
make test-browser-headless
# Run browser tests with Firefox
make test-browser-firefox
# Run browser tests in parallel (faster)
make test-browser-parallel
# Run browser tests with debugging (visible, verbose)
make test-browser-debug
# Run browser tests with different viewports
make test-browser-mobile # 375x667 (iPhone)
make test-browser-tablet # 768x1024 (iPad)
# Clean browser test screenshots
make test-browser-screenshots# Run linting with ruff
make lint
# Run linting with auto-fix
make lint-fix
# Format code with ruff
make format
# Run type checking with mypy
make type-check
# Run all checks (lint, type-check, tests)
make check-all# Run Django development server
make runserver
# Open Django shell
make shell
# Open Django shell_plus (with auto-imports)
make shell-plus# Start Celery worker
make celery
# Purge all Celery tasks
make celery-purge# Collect static files for production
make collectstatic# Clean Python cache files
make clean
# Clean everything including virtual environment
make clean-all
# Show all URL patterns
make show-urls
# Check deployment readiness
make check-deploy# Run CI test suite
make ci-test
# Run pre-commit checks (lint-fix + tests)
make pre-commit- wafer_space/ - Main application directory
- users/ - User authentication and management
- projects/ - Project submission and manufacturability checking
- referrals/ - Referral program management
- shuttles/ - Shuttle run management
- coupons/ - Coupon system
- config/ - Django configuration
- settings/ - Environment-specific settings
- staticfiles/ - Collected static files
- templates/ - Django templates
Moved to settings.
For comprehensive production deployment instructions on Debian Linux, see the Production Deployment Guide.
This guide covers:
- System requirements and initial setup
- PostgreSQL and dependency installation
- Application installation with uv
- Environment configuration
- Systemd service setup (Gunicorn and Celery)
- Nginx reverse proxy configuration
- SSL/HTTPS with Let's Encrypt
- Security hardening and monitoring
- Troubleshooting and maintenance procedures