# Job Management System

This project was generated end-to-end from a PRD/DDL.
It contains a FastAPI backend and a Vite + React + TypeScript frontend
that share `api_manifest.json` as the single source of truth.

```
.
├── api_manifest.json    # contract used by both sides
├── backend/             # FastAPI (uv-managed)
└── frontend/            # Vite + React + Antd
```

## Backend

```bash
cd backend
uv sync
uv run uvicorn main:app --reload --host 127.0.0.1 --port 8000
```

Open http://127.0.0.1:8000/docs for the auto-generated Swagger UI.

## Frontend

```bash
cd frontend
npm install
npm run dev
```

Open http://localhost:5173/.

The frontend reads `VITE_API_GENESIS_URL` from `.env` (defaults to
`http://localhost:8000`).
