Skip to content

wafer-space/platform.wafer.space

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wafer.space Online Platform

Platform for wafer.space low cost silicon manufacturing.

Built with Cookiecutter Django Ruff

License: Apache Software License 2.0

Getting Started

This project includes a comprehensive Makefile for development workflow automation. To see all available commands:

make help

Quick Start

Initial Setup

# 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

Development Workflow

Database Management

# Create new migrations
make makemigrations

# Apply migrations
make migrate

# Reset database (WARNING: Deletes all data!)
make db-reset

# Create superuser
make createsuperuser

Running Tests

# 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-failed

Browser Testing (Selenium)

Browser 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

Code Quality

# 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

Development Server

# Run Django development server
make runserver

# Open Django shell
make shell

# Open Django shell_plus (with auto-imports)
make shell-plus

Celery Background Tasks

# Start Celery worker
make celery

# Purge all Celery tasks
make celery-purge

Static Files

# Collect static files for production
make collectstatic

Utilities

# 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

CI/CD

# Run CI test suite
make ci-test

# Run pre-commit checks (lint-fix + tests)
make pre-commit

Project Structure

  • 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

Settings

Moved to settings.

Deployment

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

About

wafer.space online platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •