Vigía SMS
Live demoA Safety Management System pilot for Venezuelan airline operators, ready to demo in five minutes.
Stack
- Next.js 15
- React 19
- TypeScript
- Tailwind CSS
- Zustand
- Recharts


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 
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
- 1Supabase (PostgreSQL) with row-level security and one organization per operator.
- 2Roles for safety manager, area lead, auditor and read-only users.
- 3The audit chain computed and stored server-side, in append-only tables.
- 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