HR App Starter · Industry version
An HR system that tracks licenses, certifications, and expiries alongside hiring and PTO — generated into code your organization owns.
In healthcare, an employee record without current credentials isn't an employee record — it's a compliance finding waiting for an audit. This starter generates HR around that reality: every clinical hire carries licenses, certifications, and verification history, and every expiry has a date the system watches.
01 · The problem
Generic HR treats a hire as done when the offer is signed. A clinical hire isn't done until the license is verified against the issuing board, certifications are on file, and references from clinical practice check out — steps with their own owners and their own paper trail. A tool with no verification model pushes all of it into email, which is exactly where auditors find gaps.
Credentials also don't stay valid. Nursing licenses renew on state cycles, basic and advanced life-support certifications lapse on their own clocks, and a single expired credential can pull a practitioner off the schedule overnight. Tracking expiries in a spreadsheet means the person who maintains the spreadsheet is your compliance program.
And the roster is not one kind of worker. Employed clinicians, per-diem staff, and contracted practitioners carry different credential requirements and different renewal responsibilities. A flat employee table with a job-title column can't express who must hold what — a requirements model can.
02 · Data model
Everything in the base HR starter —
employeesdepartmentscandidatesjob_postingsinterviewstime_off_requests— plus the entities this industry actually runs on:
| table | what it holds |
|---|---|
credentials | Licenses and certifications per person — type, issuing body, number, issue and expiry dates, and current status. |
credential_verifications | Verification events against the issuing source — who checked, when, what was confirmed — the audit trail itself. |
role_requirements | Which credential types each clinical role must hold, so coverage and gaps are computed, not remembered. |
03 · Screens
The pipeline adds a credentialing gate between offer and start date: license verification, certification checks, and reference calls each tracked to completion. A start date can't be confirmed while the gate is open — the rule is code, not a sticky note.
Every credential's expiry feeds one dashboard: red for lapsed, amber for due within sixty days, sorted by how much of the schedule depends on the holder. Renewal reminders go out on a cadence you set — before the lapse, not after the finding.
The org directory shows credential status alongside role and department, and role requirements make gaps computable — a filter answers 'who can cover this unit tonight?' with people whose credentials are actually current.
04 · In practice
The offer is signed and the credentialing checklist opens: license verified against the state board, certifications uploaded, references logged as verification events. HR watches one record instead of three inboxes, and the start date confirms only when the gate closes.
Each month, the expiry dashboard surfaces everyone due within sixty days. Reminders go to the holder and their manager; a second notice escalates at thirty days. The renewal lands as a new credential row with its verification attached — history intact, audit trail unbroken.
A surveyor asks for proof of licensure for a sampled practitioner. The answer is the credential record and its verification history — dates, verifier, source — pulled up in seconds, because the trail was written at verification time, not reconstructed the night before.
Yes — expiry dates live on credential records and feed a dashboard plus scheduled reminders at intervals you choose. Escalation rules (notify the manager at thirty days, flag scheduling at lapse) are edits to your own code.
Verification events are a first-class entity: who verified, when, against which issuing source, and what was confirmed. That's the trail an auditor asks for, written at the moment of verification.
No — it's the people side: hiring, credentials, time off, and the directory. For patient records, appointments, and billing there's a dedicated clinic starter; the two can share your infrastructure and conventions.
Employment status is a field, and role requirements apply by role rather than by employment type — so per-diem and contracted practitioners carry the same credential obligations with different renewal responsibilities. Distinctions your policies need are yours to encode.
Dual7 App Starters
An HR system that tracks licenses, certifications, and expiries alongside hiring and PTO — generated into code your organization owns. Describe your version to start — the output is a project you own.