Skip to main content

02 — Starter website

HRM starter

An employee workspace that treats attendance and leave as everyday actions rather than paperwork, and gives managers a readable picture of the week.

  • Attendance
  • Leave
  • People

HRM starter interface with an employee directory, a weekly attendance strip and pending leave requests in pastel blue.

Who it is for

Built for a particular kind of team.

  • 01Growing teams running people operations across a calendar, a chat thread and a spreadsheet
  • 02Managers who need to know who is off next Thursday without asking three people
  • 03Businesses with location-specific holidays or part-time working patterns

The challenge

What usually goes wrong here.

Growing teams usually run people operations across a chat thread, a shared calendar and a spreadsheet of leave balances. Nothing is wrong until someone needs an answer — who is off next Thursday, how much leave is left, who has not been approved — and three sources disagree.

The hard part is not the database. It is designing approvals that take seconds, so the system stays current instead of becoming another place where the truth goes stale.

How it works

How it actually feels to use.

  1. 01

    The directory leads with people, not records: photo or initials, role, team, and whether they are working today. Search is instant and forgiving of spelling.

  2. 02

    Attendance is a week strip rather than a punch clock. A manager reads the whole team's week at a glance, and corrections are a click with a reason attached.

  3. 03

    Requesting leave takes one screen and shows the remaining balance and any clash with teammates before submission. Approvals arrive where the approver already works, and a decision is a single action.

Baseline capabilities

Already built, already working.

Employee directory

Profiles, teams, reporting lines and start dates, with a clean archive path for people who leave.

Attendance and working patterns

Configurable working weeks, part-time patterns, holidays by location, and corrections with an audit trail.

Leave and balances

Accrual rules, carry-over, clash detection against the team calendar, and a balance that is always visible before requesting.

Approval chains

Per-team approvers with delegation for absence, so nothing sits waiting on one person's inbox.

Documents and onboarding

Checklists and document storage per employee, with expiry reminders for anything that needs renewing.

Planning reports

Headcount, absence patterns and upcoming coverage gaps — the numbers used for planning, not for surveillance.

What we adapt

The part that becomes yours.

A practical starting point, adapted to your workflow, users, integrations, and growth stage.

Your leave policy

Accrual, carry-over caps, notice periods and the working week are set to your policy rather than to a default someone else wrote.

Approval routing

Who approves what, how delegation works when they are away, and what happens when a request is left unanswered.

Location and holiday calendars

Public holidays and working patterns per office or per country, so a distributed team is not forced onto one calendar.

Payroll handoff

Payroll stays with a specialist system. We build the export or integration that feeds it, rather than rebuilding it here.

Configuration versus build

Leave policy, accrual rules, approval chains and the working week are configuration. Payroll is deliberately left to a specialist system and integrated rather than rebuilt.

Possible integrations

It has to fit what you already run.

These are the connections this starter is commonly asked for. Each one is scoped against the specific system you use — an integration is only real once we have seen the account it has to talk to.

  • Payroll providers
  • Google Workspace and Microsoft 365 calendars
  • Slack or Teams for approvals and reminders
  • Identity providers for single sign-on
  • Document storage

Stack rationale

Chosen for this problem, not for the CV.

Next.js + TypeScript
Role-aware server rendering keeps sensitive employee data on the server and out of client bundles by default.
PostgreSQL
Leave balances are an accounting problem. Transactions and constraints prevent the double-approval class of bug outright.
Auth with per-role scoping
Managers, HR and employees see genuinely different data. Scoping belongs in one audited layer rather than in each screen.
Scheduled jobs
Accrual, carry-over and reminders run on a schedule with an idempotency key, so a retry never grants leave twice.

Responsive views

The same interface at three scales.

  • Full layout — the working week at a glance

  • Detail view — one record, in context

  • Compact layout for phone use between meetings

Every view above is the same live interface rendered at a different width — not a mock-up image — which is why the layout genuinely changes rather than shrinking.

Want a HRM shaped around your business?

Bring the process you use today, including the awkward parts. That is where the useful decisions come from.