Web Interface#

The Coord2Region project includes a React-based configuration builder and a static landing page. These live in the web-interface/ directory.

Development Setup#

Prerequisites: Node.js (v18+) and npm.

  1. Navigate to the web directory:

    cd web-interface
    
  2. Install dependencies:

    npm install
    
  3. Start the local server:

    npm run dev
    

Architecture#

  • Builder: A React application that consumes the JSON Schema generated by the Python backend.

  • Runner: An embedded Pyodide environment (WASM) allowing Python execution in the browser.

Testing#

We use Playwright for end-to-end UI testing.

# Run UI tests in headless mode
npm run test:ui

# Run tests with visual browser
npm run test:ui -- --headed

Deployment#

The web interface is built as a static site and deployed to GitHub Pages via GitHub Actions.

# Create a production build locally
npm run build