Web Development case study
Clora AI
Our own product. A multi-company HR, payroll and operations portal with biometric attendance, rule-driven payroll and a scoped AI assistant.
The decision that shaped everything else
Model the organisation before you model a screen
Companies contain departments, departments contain employees, and every permission in the system is a question about where you sit in that tree. A department manager sees one department. A company manager sees every department of the companies they manage. Only the CEO sees the whole organisation. That rule is enforced server-side on every query rather than by hiding buttons, because a hidden button is not a permission.
One settings record both sides read
Work hours, grace minutes, currency, tax slabs, provident fund rates, leave allowances and payroll policy live in one place the API and the frontend both read. Formatting a salary, deciding whether an 09:12 check-in counts as late, and calculating a month of deductions all trace back to the same record, so there is no second copy to drift out of step.
Payroll as inspectable steps, not one formula
A run moves from draft to processed, and at every stage you can see which allowance, which late penalty, which sandwich-rule day and which perfect-attendance bonus produced the number. Finance teams do not adopt a payroll system they cannot audit, and the fastest way to lose them is a total that appears without a derivation.
An AI assistant confined to the caller’s own scope
The assistant answers through a fixed tool list rather than raw table access, over the same scoped data the person asking could already open. It cannot surface a salary they were not entitled to see. The provider, model and API key are configurable by the CEO, PIN-protected, and the key is encrypted at rest. An assistant that leaks across a permission boundary is not a feature, it is an incident.
The numbers it holds
Clora runs twenty-five portal modules against one permission model: employees, attendance, leave, payroll, finance, loans, expenses, tasks, assets, documents, recruitment, meetings, announcements, messaging, moderation, analytics and the AI assistant among them.
What we take from it into client work is the shape of the thing rather than the feature list. Model the organisation first. Put policy in one record both sides read. Write money rules as steps somebody can audit. Enforce permissions in the query, not the interface. Give an AI assistant a fixed tool list and the caller's own scope, never the database.
It is also the honest answer to what we can build. This is our own product, so nothing here is a claim about a client we cannot name.
Clora is the longest-running example of how we build web platforms. If you need something with this shape, permissions, money rules and real-world hardware, that work sits under our Next.js web development service, where the scope, timeline and starting price are published before you talk to anyone.
Tell us what’s slowing you down.
Fixed scope, quoted before kickoff, four to eight weeks to production. You talk to the engineer who writes your code.
Start a project