Own products · Mobile first web system
Baba
Daily log and billing for a childcare provider in Boston: drop off, pick up, overtime, care journal and reports for parents.

- Client
- Childcare provider in Boston, United States
- Where
- Boston, MA, United States
- Technology
- Next.js 14 · React · TypeScript · Node.js · MariaDB · mysql2 · Tailwind CSS · Phusion Passenger
- Status
- Private access · baba.nexialabs.com.br
- Development
- André Gomes · NexiaLabs
In short
Baba is a web system built by André Gomes of NexiaLabs for a childcare provider working in Boston, United States. She logs each child's drop off and pick up on her phone, and the system calculates the daily rate and overtime, closes out earnings by period and prepares the billing report and care journal to send to parents on WhatsApp. It is built with Next.js and MariaDB and runs on Hostinger shared hosting.
The client
The provider cares for children from different families and charges a daily rate per child, plus overtime when a child stays past the time agreed with the parents. Each family has its own rate and cutoff time, and the weekly total has to be explained to parents with no room for doubt. The system started as a simple check in and check out tracker and was later rewritten as a childcare journal. It is used on a phone throughout the workday.
The challenge
The billing rule is the most sensitive part: overtime is charged per started hour, bands always end on the full hour, and a mistake here means a wrong bill for the parents. The provider lives in Boston, the server runs in another time zone, and US daylight saving time shifts the clock twice a year. Forgetting to tap the button on time is normal, not an exception. And changing the daily rate could never alter days already recorded.
What was built
The entire billing rule lives in one pure function, isolated from the database and the server clock, covered by tests built from real pick up times. The New York time zone decides what day and time it is, never the server, with tests for both sides of the daylight saving switch. When a day is recorded, that moment's daily rate, cutoff time and overtime rate are stored on the attendance record itself. The main screen handles the day in two taps, shows what the bill would be if the child left now, and lets her adjust times when the button was forgotten.
What the system does
- Drop off and pick up logging per child, confirming the amount before closing the day.
- Automatic daily rate and per started hour overtime, with each child's own cutoff time.
- Manual time adjustment for when a log was not made on time.
- Earnings for today, this week, last week, this month or a custom range, with one card per child.
- Billing report ready to send to parents on WhatsApp.
- Care journal covering meals, sleep, diapers, medication, mood, activities and notes.
- Child profiles with full details; inactive children leave the daily screen but stay in the history.
// For whoever reviews the code: architecture and decisions.
Under the hood
The system is a Next.js 14 App Router application in TypeScript, built in standalone mode and served by Phusion Passenger on Hostinger shared hosting. The database is MariaDB, queried with hand written SQL through mysql2, with every timestamp stored in UTC. Authentication is custom and single user: scrypt password hashing from Node and an HMAC signed session cookie, checked in the dashboard layout and at the start of every server action. SQL migrations run in order and are tracked in a table, and the deploy script keeps previous versions, applies migrations, restarts and checks that the site responds. A daily backup keeps fourteen days of copies and fails loudly if a dump comes out empty or incomplete.
Technical decisions
- Billing rule in one tested pure function, and no other part of the code calculates money; the settings screen shows examples produced by that same function.
- Rates frozen on each attendance record, so changing the daily rate today never alters days already closed.
- New York time zone fixed for every date and time decision, with dedicated tests for the daylight saving switch.
- Save button that disables itself while submitting, backed by a unique key in the database, because quick repeated taps once created duplicate records.
Does your business look like this one?
It fits nannies, caregivers, house cleaners and any professional who charges by the day or hour and has to account to several clients.
Frequently asked questions
Who developed Baba?
Baba was developed by André Gomes Andrade, a full stack developer from Carlos Chagas, Minas Gerais, Brazil, at NexiaLabs, from planning to launch.
Where is the client of Baba based?
Childcare provider in Boston, United States. Boston, MA, United States.
Which technologies were used to build Baba?
Baba uses Next.js 14, React, TypeScript, Node.js, MariaDB, mysql2, Tailwind CSS, and Phusion Passenger.
Can you build a similar project for my business?
Yes. Every project is custom built, with code and accounts in the client's name. The first step is a WhatsApp conversation at +55 (33) 98465 6356 to understand what you need.
More own products projects

NexLar
Rental management system with PIX billing, automatic late fees, lease contracts, receipts and a listings page.
NexiaLabs' own product for landlords, brokers and small real estate agencies
See the project
Norte
Organization and money app for adults with ADHD: visual agenda, hyperfocus mode, routines and protection against impulse buys.
NexiaLabs' own product for adults with ADHD
See the project