Building Our Own Timesheet Platform Across Web, Desktop and Mobile

Time tracking looks like a solved problem until the data has to mean something. Punchly is our own product, spanning web, desktop and mobile, tying hours to projects, expenses and client billing.

Start your project

The build

Punchly is a time tracking and workforce management platform built by Aipxperts as our own product.

It runs on web, desktop and mobile, and lets teams log hours, track projects, tasks and expenses, manage time off, and generate timesheets and reports. It is aimed at any business billing or costing work by the hour: agencies, consultancies, accountants, developers, lawyers and construction teams among them.

The problem

Time tracking looks like a solved problem until you need the data to mean something. Most teams start with spreadsheets, and spreadsheets fail in a specific order.

Entries are made from memory at the end of a week, so they are approximations presented as records.

Nothing connects an hour to a project, so project cost is inferred rather than known.

Expenses live somewhere else entirely, usually in a folder of photographed receipts.

Historic rates are lost, so last year's profitability cannot be recalculated.

For agencies and accountants specifically, that last point is the expensive one. If you cannot reconstruct what a client actually cost you at the rate that applied at the time, you cannot tell which clients are worth keeping. There was also a delivery problem. People track time in different places. At a desk, on a phone between sites, and on a desktop machine while working. A tracker that only exists in one of those gets used inconsistently, which puts you back to approximations.

What we built

We built Punchly as a monorepo so the same product ships everywhere without three teams maintaining three versions of the truth.

Time tracker

A timer plus manual entry with keyboard shortcuts, because the people who track the most hours want the fewest clicks.

Timesheets

Generation, management and approval flows.

Projects and tasks

Hours attributed to specific work, which is what turns time data into cost data.

Expense tracking

Costs recorded against the same project as the hours.

Time off and leave

Requests and approvals in the same system as attendance.

Reports

Time, activity, attendance and cost reporting.

Team management

Roles, availability and workload.

Client management

Multi-client and multi-currency with billing, plus historic rate tracking so profitability can be recalculated correctly for past periods.

Cross-device sync

The same session continues wherever the person is working.

The outcome

Before
manual and spreadsheet-based tracking that was error-prone, hard to audit, and disconnected from project costs and client billing.
After
a single platform across web, desktop and mobile with centralised time data, projects and tasks tied to hours, expenses in the same place, and multi-currency client billing with historic rate tracking.

Tools and Technologies

Next.js
TypeScript
PostgreSQL
Prisma
Redis
Flutter
Monorepo
QuickBooks
Jira

Planning something similar?

Building a product across web, desktop and mobile without tripling the team is an architecture decision, and we made it on our own product first.

Start the conversation