Nguyen Ho Landiemnails.com

Diễm Nails

Everything a salon runs on, in one place

A nail, lash and hair salon in District 4 was running on a paper appointment book and a phone. Diễm Nails replaced both: customers book online, the front desk works from one screen, and the owner sees the numbers without asking anyone.

01

What the salon actually uses

Online booking

Customers pick a service, a technician and a time; the front desk stops taking bookings by phone.

Point of sale

Check out at the counter, split payments, and close the day with one number that matches the till.

Staff and commission

Shifts, who did which service, and the commission that follows from it.

Customer records

History, preferences and loyalty, so a returning customer is recognised.

Reporting

Revenue by day, service and technician, exported to Excel for the owner.

Notifications

Email and push when a booking is made, moved or cancelled.

02

Built with

InterfaceNext.js, React
Data accessPrisma over PostgreSQL
Cache & queuesRedis
NotificationsFirebase push, MailerSend email
ReportsExcelJS
Access controlJWT sessions, roles per staff member
HostingUbuntu, nginx, PM2, TLS
03

Three surfaces, one database

The customer site, the back office at admin.diemnails.com and the shared API at api.diemnails.com all read and write the same records. A booking made on the phone at midnight is on the front desk screen before the shop opens, and it is the same row the revenue report counts at the end of the month.