De urenregistratie-industrie verkoopt je timers, kanbanborden, goedkeuringsstromen en een dashboard vol wijzerplaten. Een architectenbureau heeft daar weinig aan. Dat wil weten hoeveel uur er in een dossier zit, in welke fase dat uur ging zitten, en of het geheel nog past binnen wat er is afgesproken.

Element Architecten uit Gent vroeg ons in het voorjaar van 2021 om precies dat. Wij vonden het een goed idee en maakten er meteen een eigen product van: Timesheets Ninja. De naam is van ons, de schuld dus ook.

Nagebouwd aanmeldscherm van Timesheets Ninja in een browservenster en op een gsm, met een wit kaartje op een donkere achtergrond
Nagebouwd scherm met voorbeeldgegevens. Elke klant krijgt een eigen adres en zet zelf een achtergrondfoto achter het kaartje; hier twee voorbeelden in plaats van een echte foto.

Eén scherm per dag

Je meldt je aan en staat meteen waar je moet zijn: vandaag. Bovenaan een grijze datumbalk om van dag te wisselen, daaronder één rij velden. Duur of van–tot, werktype, project, opmerking, toevoegen. Klaar.

Wie liever "3:30" typt, typt 3:30. Wie liever 09:00 en 12:30 ingeeft, klikt op het pictogram naast het label en krijgt twee tijdvelden. De app onthoudt per gebruiker welke van de twee manieren hij gebruikt, zodat niemand elke ochtend opnieuw moet omschakelen.

De projectlijst is doorzoekbaar, want na tweehonderd dossiers scrol je niet meer. Onder de invoerrij staat wat je die dag al ingaf, met twee knopjes per lijn: aanpassen of verwijderen. Een admin kan bovendien voor iemand anders ingeven, voor wie zijn briefje pas op vrijdag bovenhaalt.

Nagebouwde dagregistratie van Timesheets Ninja op desktop en gsm: datumbalk, invoerrij met duur, werktype, project en opmerking, en het overzicht van de dag
Nagebouwd scherm, op desktop en gsm. Projecten, namen en uren zijn verzonnen voorbeelden.
Schema: een veld met 3:30 naast een tijdlijn van 09:00 tot 12:30, met een wisselpictogram ertussen en een kleine astronaut
Twee manieren om dezelfde halve dag in te geven. De app onthoudt welke je verkiest.

Uren maal uurtarief, naast het budget

Het tweede scherm is het rapport. Je kiest een periode, eventueel een gebruiker en een project. Links komen alle ingaven per project onder elkaar te staan, met een totaal per project en een totaal onderaan. Rechts staat de samenvatting: uren per fase en uren per persoon.

Daaronder staan de twee cijfers waar het echt om draait. Elk werktype heeft een uurtarief, dus elk gepresteerd uur heeft een waarde. Die waarde zet de app naast het budget van het project. Blijf je eronder, dan staat ze er groen bij. Zit je eraan of erover, dan wordt ze rood. Dat is de volledige rapportage: geen grafiek, geen legende, één bedrag dat groen of rood is.

Een gewone gebruiker ziet in datzelfde scherm alleen zijn eigen uren. Een admin ziet iedereen en kan alles exporteren naar Excel: gebruiker, project, werktype, datum, begin, einde, totaal en opmerking. Onze eigen pitch uit 2021 riep nog "Move aside Excel", maar die export zat er vanaf dag één in. Mensen willen hun kolommen.

Nagebouwd rapportscherm van Timesheets Ninja: links de ingaven per project met totalen, rechts een samenvatting met budget in het zwart en de prestatie in het groen of het rood
Nagebouwd scherm met verzonnen projecten, uren en tarieven. Rechtsonder gaat het tweede project net over zijn budget.
Schema: een balk waarin drie kleurverloopsegmenten samen bijna het volledige budgetkader vullen, met kleine labels voor uren en uurtarief en een astronaut op de rand
Uren maal uurtarief, tegenover het budget. Zolang er ruimte overblijft, blijft het groen.

Vier schermen beheer, en dan is het gedaan

Achter de knop Admin zitten vier lijsten. Projecten: naam, referentie of automatisch dossiernummer, budget. Werktypes: naam, plaats in de keuzelijst en uurtarief, want dat tarief voedt de groene of rode lijn in het rapport. Gebruikers: naam, e-mail en of iemand admin is of gewone gebruiker. Meer rollen zijn er niet, en meer bleken er ook niet nodig.

En dan Achtergrond: de foto achter het aanmeldscherm. Dat is het volledige white label-verhaal. Elke klant krijgt zijn eigen adres, zijn eigen foto en verder exact dezelfde app.

Nagebouwde beheerschermen van Timesheets Ninja: een lijst projecten met budget en een lijst werktypes met rank en uurtarief
Nagebouwde beheerschermen met voorbeeldgegevens. Het uurtarief bij een werktype bepaalt wat een uur waard is in het rapport.

Onder de motorkap

Kirby met MySQL erachter. Elke klant is een pagina in het CMS; projecten, gebruikers, werktypes en alle ingaven zijn virtuele pagina's die rechtstreeks uit de databank komen. Zo heeft elke klant zijn eigen adres en zijn eigen gegevens op één installatie, zonder dat wij voor elk bureau een kopie moeten onderhouden.

De eerste versie draaide op Kirby 3.5.4, uit datzelfde 2021. In augustus 2026 hebben we hem gemigreerd naar Kirby 4.8. Zoiets is geen nieuw project, dat is gewoon een huis onderhouden waar nog mensen in wonen.

De verkooppagina van timesheets.ninja hebben we ooit opgezet en later weer uitgezet. Het gereedschap zelf bleef gewoon draaien.

Wat het niet doet

Geen timer die meetikt terwijl je werkt. Geen goedkeuringsstroom waarin een leidinggevende eerst moet klikken. Geen facturatie, geen verlofaanvragen, geen weekweergave waarin je blokjes versleept. Geen app in een store: het is een website, hij werkt op je gsm.

Dat is geen luiheid, dat is de opdracht. Elke knop die erbij komt, moet daarna elke dag opnieuw begrepen, ingevuld of genegeerd worden.

Bouwstenen die we hergebruiken

Timesheets Ninja deelt zijn fundamenten met ander werk van ons. De aanmeldlogica komt uit dezelfde familie als die van het afsprakensysteem van Huisartsen ’t Zuid, en de manier om een databank als CMS-pagina's te tonen gebruikten we ook in de bestelmodule van Ceres Pharma. Dat scheelt tijd, en tijd is hier toevallig het onderwerp.

Oorspronkelijk gebouwd voor architecten, maar er is niets architecturaals aan. Elk bureau dat uren op dossiers schrijft, kan ermee vooruit.

Schema: een wijzerplaat waarvan bijna driekwart is ingekleurd met een kleurverloop, met een kleine astronaut die er middenin zweeft
De enige wijzerplaat in dit project. In de app zelf staat er geen.
Volgend project

De grote tovenaar van kleine neusjes

Website →
De grote tovenaar van kleine neusjes
Vorig project: Een neus voor vernieuwing B2B-platform