Local Development Guide

Prerequisites


Setup

Create a virtual environment (if required):

  • python -m venv .venv
    

Activate venv:

  • PowerShell

    .\.venv\Scripts\Activate.ps1
    
  • Bash

    source .venv/bin/activate
    

API (Backend)

Set environment variables (while the virtual environment is active):

  • PowerShell

    # Replace <USER_HOME> with your user folder or path to the repos
    $env:AAZ_PATH = "<USER_HOME>/aaz"
    $env:AAZ_SWAGGER_PATH = "<USER_HOME>/azure-rest-api-specs"
    $env:AAZ_SWAGGER_MODULE_PATH = "<USER_HOME>/azure-rest-api-specs/specification"
    $env:AAZ_CLI_PATH = "<USER_HOME>/azure-cli"
    $env:AAZ_CLI_EXTENSION_PATH = "<USER_HOME>/azure-cli-extensions"
    
    $env:FLASK_APP="aaz_dev.app.app:create_app"
    
  • Bash

    # Replace <USER_HOME> with your user folder or path to the repos
    export AAZ_PATH="<USER_HOME>/aaz"
    export AAZ_SWAGGER_PATH="<USER_HOME>/azure-rest-api-specs"
    export AAZ_SWAGGER_MODULE_PATH="<USER_HOME>/azure-rest-api-specs/specification"
    export AAZ_CLI_PATH="<USER_HOME>/azure-cli"
    export AAZ_CLI_EXTENSION_PATH="<USER_HOME>/azure-cli-extensions"
    
    export FLASK_APP="aaz_dev.app.app:create_app"
    

Start application:

  • flask run --reload --port 5000
    

Frontend:

  • Install dependencies

    pnpm install
    pnpm build:typespec
    pnpm build:web
    pnpm run bundle
    
    
    cd src/web
    pnpm install
    
  • Run front-end dev server (from src/web)

    pnpm run dev