Build log, week 1: the server decides who's on the clock
The first week of Kaslu Work: venues drawn on a map, a roster that publishes in one step, and a clock-in the phone can't approve by itself.
We started building Kaslu Work on 21 August. I'm going to write down what ships each week, mostly for the people who'll run a venue on it, and partly so we can't pretend later that things went smoother than they did.
The first decision was the one everything else hangs off. When a staff member taps clock in, their phone doesn't get to say yes. It sends where it is and when, and the server checks that against the venue's boundary and the roster, then accepts it, rejects it, or holds it for a manager. A phone that's been tampered with can't mark itself as being at work.
Venues, rosters and a record you can't quietly edit
Each venue is a shape on a map. You drop a pin, trace the building, and that outline is what every clock-in gets measured against. The roster sits on top of it: weeks, shifts and leave, with drafts that stay invisible to staff until you publish.
Once a clock-in is recorded, nobody edits it, us included. If it needs correcting, the correction is a new record that points back at the original. When someone disputes their hours six months from now, both versions will still be there.
By day two there was a weekly grid you could actually work in. You can edit a shift where it sits, step between weeks, and copy next week from this one. When something would stop the week publishing, like a shift with nobody on it, that's the first thing you see.
The pieces managers asked for first
Day three was the list every manager reads out when you ask what they need. Timesheets now export as a CSV your bookkeeper can open without calling you. Announcements go out once and land on every phone. Staff can offer a shift, someone else can take it, and a manager approves the swap; we tested that with two people grabbing the same shift in the same instant, and only one of them gets it.
Owners can also choose how clock-ins round from a settings page, and a day later they could change a person's role without asking us to touch the database. That sounds small. It's the difference between software you run and software you have to ring someone about.
On day four the product got its name, Kaslu Work. Next up was the part that breaks most time-clock apps: basements, cool rooms and car parks with no signal.
Control every hour, at every venue.
Rostering and clock-in for hospitality groups, opening to venues a few at a time.
Keep reading
Geofenced clock-in for hospitality venues: how it works and how to set it up
A geofence tells you where a phone was when someone tapped Clock in. Here's what that proves, what it doesn't, and how to draw a boundary that fits the way your venue actually starts a shift.
5 min read
Build log, week 5: drag, drop, and who can actually work
Trading hours per venue, staff availability from the phone, shifts you can drag between sections or move with the keyboard, and a list of who's free to fill an empty shift.
1 min read
Build log, week 4: hospitality, a new staff app, and rows that are places
We moved Kaslu Work to Australian hospitality, rebuilt the staff app around the clock-in, and laid the roster out by the bar, the floor and the kitchen instead of by person.
1 min read