Skip to content
Ricardo Martínez
Back to all projects

Vigía SMS

Live demo

A Safety Management System pilot for Venezuelan airline operators, ready to demo in five minutes.

Open live demoCode available on request

Stack

  • Next.js 15
  • React 19
  • TypeScript
  • Tailwind CSS
  • Zustand
  • Recharts
Vigía SMS safety dashboard with monthly indicators and the residual risk matrix
Vigía SMS dashboard on a phone, with the risk matrix fitted to the screen

The problem

Airline operators in Venezuela must run a Safety Management System under RAV 5, the national regulation based on ICAO Annex 19. Many still manage reports, hazards and corrective actions across spreadsheets and paper.

I built Vigía SMS to show an operator what the whole program looks like in one tool: what needs attention today, how risk is trending and whether the safety records can be trusted.

What it covers

Dashboard
Monthly indicators, the residual risk matrix, overdue items and recent activity.
ASR and MOR reports
Intake, filters, analysis states, links to hazards, authority notification and CSV export.
Hazards and risk
Initial and residual risk on the ICAO Doc 9859 matrix.
Corrective actions
Owners, due dates and mandatory evidence to close.
Safety indicators
Traffic-light thresholds, trends and an editable monthly log.
RAV 5 compliance
Status and evidence for each of the 12 elements.
Reports
Period report ready to print or save as PDF, stamped with the audit log hash.
Audit log
SHA-256 chained entries with an integrity check.
  • Safety indicators with traffic lights and monthly trends
    Safety indicators with traffic lights and monthly trends
  • Hazard register next to the ICAO risk matrix
    Hazard register next to the ICAO risk matrix

Technical decisions

One door to the data

Every screen reads and writes through a single Zustand store. Today it persists in the browser; moving to a database means changing that file, not the screens.

A log you can't quietly edit

Each audit entry stores the SHA-256 hash of the previous one. Changing any past record breaks the chain, and the integrity check reports exactly where.

Rules as configuration

Risk tolerability and indicator thresholds live in their own modules, so each operator can set its own criteria without touching the UI.

Checked, not assumed

A verification script tests the hashing, the seeded indicators and tamper detection, and the UI is checked for overflow from 320 px phones to desktop.

Path to production

  1. 1Supabase (PostgreSQL) with row-level security and one organization per operator.
  2. 2Roles for safety manager, area lead, auditor and read-only users.
  3. 3The audit chain computed and stored server-side, in append-only tables.
  4. 4Attachments, due-date emails and electronic signature for reports.

Indicator thresholds and notification deadlines in the demo are sample values. They need validation against the current edition of RAV 5 before any commercial use.

Open live demo