Back to browse

AH Original · Case study 05

ProjSafe

Private2025Field safety · Mobile + HWS

A permit-to-work app for high-risk site jobs: risk assessments, three-step approvals and daily hazard check-outs, built in Flutter on Horizech’s HWS platform and run from a web dashboard.

Private app behind a company login. Screens are recreated with fictional sites and people.

Role
Lead Flutter developer
Stack
Flutter · HWS
Year
2025
hws · projsafe dashboard
ProjSafe safety dashboard in the HWS workspace with job, check-in and hazard charts
mobile app · iOS / Android
ProjSafe HSE and supervisor home screens with jobs-by-status pie charts and the approve step
Type
Field safety · permit to work
Role
Lead Flutter developer
Stack
Flutter · HWS
Access
Private · behind login

01. The workflow

No permit, no work.

Hot work, confined spaces, excavation near live cables and heavy lifts all need a risk assessment and sign-off before anyone starts. On many sites that still means paper and phone calls. ProjSafe moves the whole loop onto the phone, and every step it records can be audited later.

  1. 01

    Create

    The worker adds the job, uploads the risk assessment PDF and picks a supervisor and HSE manager.

  2. 02

    Approve

    Supervisor, then HSE manager, approve or reject with a comment. A rejection sends it back for a fix.

  3. 03

    Check in

    Each day starts by accepting every safety check and taking site photos.

  4. 04

    Check out

    Each day ends with “Any hazard?” and, if so, its root cause and comments.

02. The HWS dashboard

Every site,on one screen.

ProjSafe runs on Horizech’s HWS workspace. HSE managers and admins follow live jobs, check-ins and hazards there, and manage the people, forms and equipment the app depends on.

Recreated with fictional sites and people

01 / 12 · Safety dashboardhws dashboard
ProjSafe: Jobs, check-ins and hazards across every site
Jobs, check-ins and hazards across every site

03. Rules, not releases

The app reads its behaviour from the dashboard.

Which job states each role sees, under which tab, in which colour and order, comes from a status mapping on the server. Hazard assessment fields come from JSON form definitions. Change either in the dashboard and every phone picks it up on next open, with no new build in the stores.

  • Live counts of jobs, approvals, check-ins and hazards
  • Hazards grouped by the root cause reported on site
  • Approval trail and pre-start checks on every job
  • QR labels printed straight from the equipment register

04. The mobile app

Three roles, one app.

I led the Flutter app from its first screens to v0.1.7. After sign-in, workers, supervisors and HSE managers each land on their own home: a pie chart of their jobs by status, the jobs waiting on them, and a bottom bar with a QR scanner in the middle.

  • One app, three roles: worker, supervisor and HSE manager
  • Pie chart of jobs by status; tap a slice to load those jobs
  • Risk assessment PDFs uploaded and viewed in the app
  • Every approval, rejection and re-upload kept in the history

05. Field forms & equipment

Checks done where the work is.

Field Level Hazard Assessments and light-vehicle pre-trip inspections are filled in on site, step by step, then reviewed by a supervisor. Scanning the QR label on a gas detector or a crane opens its manuals, certificates and videos right there.

  • Multi-step forms rendered from JSON, text areas included
  • Light-vehicle pre-trip checks with plate, comments and review
  • Equipment PDFs, Office files, links and video in the app
  • Labels are server-side i18n keys, cached on the phone

06. Architecture

A thin client, a smart backend.

The app talks to HWS through the Apiraiser client. Sessions sit in secure storage and refresh in the background, so a long shift never ends in a surprise sign-out. Status mapping and labels are cached on the phone, so screens open fast on a weak signal.

  1. Flutter app

    Worker · Supervisor · HSE

  2. Auth

    Secure storage · token refresh

  3. HWS API

    Apiraiser client

  4. HWS dashboard

    Jobs, forms & rules

  5. Data & media

    Jobs · forms · PDFs · photos

07. In numbers

First commit to v0.1.7 in seven months.

Work began in January 2025 with sign-in and the QR scanner. After the first release in July, seven more followed within a month as feedback came in from the field: hazard levels, check-out comments, vehicle number plates and a new job overview.

3
Roles in one app
88
Of 105 commits mine
8
Releases, v0.1.0 to v0.1.7
2
Platforms, one codebase

08. Technologies

  • Flutter
  • Dart
  • flutter_up
  • Apiraiser
  • HWS
  • Dio
  • Secure storage
  • mobile_scanner
  • fl_chart
  • Syncfusion PDF
  • WebView
  • image_picker
  • file_picker
  • i18n

09. Availability

Private app

ProjSafe and its dashboard sit behind a company login, so there is no public link. The screens here are recreations with fictional sites and people. I’m happy to walk through the app on a call.

Next project: ToolBubble
Chat on WhatsApp

AH Originals

More Like This

AH Original91 % image weight removedE-commerce platform & admin CMSSkinChoiceNext.js 16 · TypeScript · Cloudflare Workers · R2A production beauty storefront and fully custom, role-based admin CMS built for the Pakistani market. Watch case studyAH OriginalFurniture discovery & content platformDIEWOHNENNext.js 14 · Hono · Cloudflare Workers · D1 / R2A bilingual home-living platform pairing an AI shopping assistant and visual search with a full custom CMS. Watch case studyAH OriginalEnterprise compliance platform & Flutter appOneComplianceAngular 18 · Flutter · AWS Serverless · PostgreSQLA multi-tenant compliance SaaS whose interface is generated from metadata, plus a native Flutter field app for consultants. Watch case studyAH Original83 packages on one coreModular workspace platform & package HubHWS.NET 10 · Next.js · YARP · PostgreSQL · Cloudflare WorkersHorizech Workspace: a .NET core that installs, updates and rolls back apps, plugins, providers and themes at runtime, published through its own Hub. Watch case studyAH Original196+ browser-based toolsOnline tools SaaS platformToolBubbleNext.js 14 · FFmpeg WASM · Cloudflare Workers · StripeOver 196 private, in-browser tools with online editors, cloud storage, secure sharing and subscriptions, designed, built and run solo. Watch case studyAH Original7 portal sections, live from SheetsAgency site & Google Sheets client portalAffiLinksNext.js 15 · Hono · Cloudflare Workers · Google Sheets APIAn affiliate marketing agency's site and client portal: brands see their live program, read from the team's Google Sheets, and update orders back to them. Watch case studyAH Original2 languages, one switchDutch coupon site & admin CMSActiesDealNext.js 14 · Hono · Cloudflare Workers · D1 / R2A coupon and voucher site for the Netherlands in Dutch and English, run from a custom role-based admin CMS. Watch case studyAH Original199 published coursesEngineering e-learning, web & appWiscademyNext.js 16 · Flutter · HWS · Stripe · RevenueCatNPPE, FE and CPD courses for Canadian engineers: a Next.js website and a Flutter app on one HWS backend. Watch case study

Next episode

Want something like ProjSafe?

Tell me about your idea and I'll reply with honest advice and a free quote. Replies within 24 hours.