- Add hourly_solar_profile and hourly_wind_profile to store per-hour output values - Add solar_dc_mwp, solar_ac_mw, wind_mw to PipelineResult for capacity display - Add columns: Solar 8760, DC MW, Solar MW / Wind 8760, MW, Wind MW - Updated UI to show detailed breakdown at each level (Year/Month/Day/Hour) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src/remodel_api | ||
| tests | ||
| Dockerfile | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
remodel-api
FastAPI + Arq async service for the REmodel calculation engine.
Setup
poetry install
# Redis must be running (see docker-compose.yml at repo root)
docker compose up -d redis
Common commands
# Start API server
poetry run uvicorn remodel_api.main:app --reload --port 8000
# Start Arq worker
poetry run arq remodel_api.workers.main.WorkerSettings
# Run tests
poetry run pytest
# Lint + typecheck
poetry run ruff check . && poetry run mypy src/
API
| Method | Path | Description |
|---|---|---|
| GET | /healthz | Health check |
| POST | /api/scenarios | Create + enqueue |
| GET | /api/scenarios | List all |
| GET | /api/scenarios/{id} | Get one |
| GET | /api/scenarios/{id}/events | SSE progress stream |
Interactive docs: http://localhost:8000/docs