Skip to content

wojtekwoz/aerofleet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AeroFleet

AeroFleet is an Open Mercato-based operations platform for drone fleet management. This repository is currently at the kickoff stage: the app runs on the Open Mercato foundation, but the AeroFleet product modules and Mission Control experience have not been built yet.

Current Status

The codebase is still close to a fresh Open Mercato installation:

  • core Open Mercato modules are enabled in src/modules.ts
  • the only custom app module currently enabled is example
  • the homepage and shell still use the default Open Mercato UI
  • AeroFleet-specific specs and domain modules have not been implemented yet

Project operating guidance for agents lives in AGENTS.md.

AeroFleet OS MVP

The current target is the AeroFleet OS MVP for the demo scenario: Wind Farm Inspection / Inspekcja Farmy Wiatrowej.

MVP goals

  1. Build on the Open Mercato foundation with multi-tenancy and RBAC
  2. Prioritize telemetry ingestion and machine-to-machine flight data handling
  3. Enforce pre-flight compliance as a hard mission launch gate

Target capabilities

  • Mission Control dark-mode operations UI
  • CRM intake for customer inspection requests
  • Pilot profile validation, especially certification validity
  • Fleet and payload registry, including battery SOH tracking
  • Scheduler-driven resource matching for drones, batteries, and staff
  • Compliance workflows for checklist, weather, and airspace authorization
  • MAVLink-oriented telemetry ingestion and live mission tracking
  • Post-flight technical log archiving
  • Billing derived from verified flight telemetry

Tech Stack

  • Next.js App Router
  • TypeScript
  • Node.js
  • PostgreSQL
  • MikroORM
  • Awilix
  • Zod
  • Open Mercato

Requirements

  • Node.js >= 24
  • Yarn 4
  • PostgreSQL

Getting Started

Install dependencies:

yarn install

Bootstrap the local environment:

yarn initialize

Start the development server:

yarn dev

Common Commands

yarn dev
yarn build
yarn lint
yarn typecheck
yarn test
yarn test:integration
yarn generate
yarn db:generate
yarn db:migrate

Development Workflow

1. Start with a spec for significant work

Before implementing a major AeroFleet feature, check .ai/specs/. If no relevant spec exists, create one first from:

2. Follow agent context routing

Before coding, load the relevant guides and skills from:

3. Treat generated files as generated

Do not edit:

  • .mercato/generated/*
  • node_modules/@open-mercato/*

Edit source files and run:

yarn generate

4. Handle entity changes through migrations

If you modify entity definitions:

yarn db:generate

Review the generated migration before applying:

yarn db:migrate

Then regenerate framework output:

yarn generate

Repo Structure

src/
├── app/                 # Next.js app shell
├── components/          # shared app UI
├── modules.ts           # enabled Open Mercato modules
└── modules/             # custom application modules

.ai/
├── guides/              # framework usage guides
├── skills/              # task-specific workflows
└── specs/               # feature specifications

Planned Delivery Sequence

  1. Write the AeroFleet MVP spec
  2. Define AeroFleet domain modules and naming
  3. Model missions, fleet, telemetry, batteries, and technical logs
  4. Build telemetry ingestion and live mission state
  5. Implement compliance gateway workflows
  6. Add scheduler automation, customer notifications, and billing

Notes

  • src/modules/example is demo/reference material, not AeroFleet production domain logic
  • the current UI is a baseline shell, not the target Mission Control dashboard
  • future work should prefer extending Open Mercato modules before ejecting or rebuilding them

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages