In2Touch
Product Architecture
Back to sign in

How the Volunteer Hub works

A practical look at the flows, rules engine, and data shape that power scheduling, communication and coordination for our 100+ volunteers.

4 user roles

Referee, Venue Manager, Coordinator, Admin — each with tailored views and permissions.

Match lifecycle

Scheduled → Confirmed → Completed, with auto status nudges when referees respond.

Role-based access

Routes and actions gated by role; admin actions write to an audit log.

Single source of truth

Matches, venues, availability and incidents live in one normalised store.

Notifications

Broadcast announcements by audience and priority; in-app + push.

Rules engine

Allocation respects availability, city proximity, and qualification level.

Core flow — Match allocation


Coordinator ──▶ Create match ──▶ Rules engine ──▶ Suggest refs
                                 (availability,        │
                                  city, level,         ▼
                                  fairness)         Assign + DM
                                                       │
                       ┌───────────────────────────────┤
              on decline│                              │on accept
                       ▼                               ▼
                Re-run rules                       Confirmed
                                                       │
                                                       ▼
                                              Venue Manager
                                              checklist
                                                       │
                                                       ▼
                                                  Completed

Rules engine

Eligibility filters

• Referee marked available on date + slot

• Same city as venue (or within commuting distance)

• Qualification level ≥ match division requirement

• No conflicting assignment within 90 minutes

Ranking signals

• Fairness — fewer matches this month ranked higher

• Recent rating from coordinators (weighted 30%)

• Travel time penalty for venues over 5 miles

• Mentor pairings for new referees

Data model

User ──< Availability      Venue ──< Match >── User (referee)
  │                                    │
  └──< Message                      Match ──< Incident
  │
  └──< AuditLog (admin actions)

Announcement (audience: role | all, priority: info | important | urgent)