All work

MasjidPass

Volunteer operators needed a reliable, low-training replacement for an unstable event check-in application.

Role
Lead Developer and project owner
Type and status
Public product · Shipped
Period
2021

See the system.

Actual interface evidence is embedded here. External links are secondary.

MasjidPass mobile scanner showing scan, valid, and invalid QR states.
Synthetic demo data

The most important workflow is visible: scan, confirm, or explain the failure immediately.

Public MasjidPass repository screenshot
MasjidPassOperator scan states
MasjidPass mobile scanner showing scan, valid, and invalid QR states.

The most important workflow is visible: scan, confirm, or explain the failure immediately.

The operational problem

Volunteer operators needed a reliable, low-training replacement for an unstable event check-in application.

Led a five-person team delivering a QR check-in app adopted by a nonprofit client.

Why this system exists

The operator needed an immediate answer at the door. A mobile scanner with explicit success and failure states fit the physical workflow better than a generic registration dashboard.

A nonprofit client supplied the need. Ayub translated operator feedback into a backlog and led the five-person student delivery.

Who uses itMosque volunteers and event operators.

How the work moves

  1. Sign in
  2. Select event and door
  3. Scan booking code
  4. Validate identifier and state
  5. Show actionable result
  6. Record scan history
  7. Handle offline or permission failures

What shaped the solution

Volunteer users needed immediate, low-training feedback.

The app depended on a remote service during busy events.

The student team needed parallel ownership without architectural drift.

Exact throughput and uptime measurements were not recorded.

What I owned

Designed

Low-training scan flow, failure feedback, and MVC team boundaries

Developed

Login, event selection, scanner, scan history, settings, and local persistence

Integrated

QR camera, permissions, audio feedback, SQLite, and remote service boundary

Tested

Valid, invalid, duplicate, offline, capacity, and permission paths

Collaborated

Nonprofit client and five-person capstone team

Context matters. The work happened with teams and stakeholders. These statements describe my contribution without turning shared delivery into a solo claim.

Decisions that carried the work

Design for the operator

The flow minimized steps and made success and failure states obvious for volunteers working under event pressure.

Separate the app before scaling the team

Refactoring to MVC gave UI, business logic, and data integration clear boundaries for parallel development.

Make failure actionable

Invalid codes, unavailable networks, auth errors, and backend faults each produced a useful operator response instead of a silent stop.

Verified outcome

Delivered a production-ready replacement for the legacy check-in app.

The nonprofit client adopted the system after handoff.

Clear operator feedback replaced silent failures.

MVC structure enabled parallel work across the five-person team.

What I will not overclaim

The client adoption is supported, but exact throughput, uptime, and time-saved metrics were not recorded.

Verified from the MasjidPass source profile and public GitHub repository.

Tools used where they fit

FlutterDartREST APIsMVCGitUnit testing
Open public project

Continue through the work

Shawarma Palace MerchEmail Ayub