Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutoPulse Base

Base CI Docker Architecture Status

AutoPulse is a full-stack automotive intelligence platform for EV charging infrastructure, geospatial station search, route planning, reliability scoring and data quality monitoring.

This is the base repository. It owns the product vision, architecture docs, phase prompts, local orchestration and cross-repository coordination.

Repository Map

Portfolio Signal

AutoPulse is built as a portfolio-grade product system rather than a single demo repository. The base repo explains the product, architecture and local orchestration, while the service repos show focused backend, frontend, ingestion and contract ownership.

The current public version demonstrates:

  • Python/FastAPI API design with tests, metrics and generated OpenAPI.
  • React/TypeScript frontend with MapLibre geospatial UI and reusable design primitives.
  • MongoDB geospatial persistence and Open Charge Map ingestion.
  • Modeled charger availability clearly labelled as simulated until live provider status feeds are connected.
  • Multirepo CI and contract-oriented delivery.

Local Structure

docs/     Product, architecture and ADR documentation.
infra/    Infrastructure configuration placeholder.
prompts/  Phase-by-phase implementation prompts.

Implemented Slices

  • API foundation, health and MongoDB readiness.
  • MongoDB station, ingestion run and data quality models.
  • Open Charge Map ingestion worker with quality reports.
  • Station search API and map explorer.
  • Open Charge Map API-key based Madrid-area ingestion for local demos.
  • Modeled station availability exposed as status.source=simulated and shown in the UI as Modeled.
  • Route planning API and route planner UI.
  • Admin/demo data quality dashboard.
  • Structured request and ingestion logging.
  • Prometheus-style API metrics.
  • Scheduled worker ingestion.
  • OpenAPI and generated TypeScript contracts.
  • GitHub Actions for API, frontend and worker quality checks.

Screenshots

Overview:

AutoPulse overview

Map explorer with Open Charge Map data and modeled availability:

AutoPulse map explorer

Route planner:

AutoPulse route planner

Data quality dashboard:

AutoPulse data quality dashboard

Local Setup

Local workflow:

  1. Copy .env.example to .env.
  2. Start local dependencies with Docker Compose.
  3. Run the API, frontend and worker from their service repositories.
docker compose up

Run the API locally after installing its Python dependencies:

cd ../autopulse-api
PYTHONPATH=src uv run uvicorn autopulse_api.app:create_app --factory --reload

Run the frontend locally:

cd ../autopulse-frontend
npm install
npm run dev

Run Open Charge Map ingestion locally:

cd ../autopulse-worker
MONGODB_URI='mongodb://autopulse:autopulse@localhost:27017/autopulse?authSource=admin' \
OPEN_CHARGE_MAP_API_KEY='your-open-charge-map-key' \
  uv run autopulse-worker ingest open-charge-map \
    --bounding-box 40.20 -4.15 40.70 -3.35 \
    --max-results 200

Open Charge Map provides station metadata. Live connector occupancy is not available through this integration, so AutoPulse marks availability as modeled until a live OCPI/CPO feed is connected.

Quality Commands

API:

cd ../autopulse-api
uv run --extra dev ruff check .
uv run --extra dev pytest

Frontend:

cd ../autopulse-frontend
npm run lint
npm run test
npm run build

Worker:

cd ../autopulse-worker
uv run --extra dev ruff check .
uv run --extra dev pytest

Documentation

About

Portfolio-grade automotive intelligence platform for EV charging, routing and data quality.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors