Freelance · Firecorp · 2026
FireSafe
A PWA that replaced a fire-safety consultancy's Excel spreadsheet for tracking permits (alvarás) and licensing processes.
Problem
Firecorp tracked its clients' properties, permits and licensing processes in a large Excel spreadsheet, with no automatic alert before a permit expired and no shared, multi-device view for the team.
What I built
- Proposals, properties, inspections with photos, PDF documents and configurable process steps, with roles for admins, technicians, managers and viewers. An accepted proposal automatically creates the property record.
- Automatic permit status (regular, irregular, no permit) computed from the validity date, with a configurable expiry alert that flags properties needing a new inspection.
- Migrated from a localStorage prototype to Firebase: Authentication with invite and approval flow, Firestore, Storage for photos and PDFs, Hosting, and Cloud Functions for email (Nodemailer, token-verified requests), push notifications (FCM) and an image proxy. Installable and works offline.
- A finance module with cash flow, a management income statement (DRE), CSV and OFX bank statement import and duplicate detection, built on Next.js 16, Cloudflare Workers, D1 and Drizzle ORM, now being integrated into the platform.
My role: Built everything on my own, from requirements with the client to deployment.
- React 19
- TypeScript
- Vite
- MUI
- Firebase
- Cloud Functions
- FCM
- PWA
- Next.js 16
- Cloudflare Workers
- D1
- Drizzle ORM
