Online booking and managementNails by Ivyy
Booking down to the detail.
Booking website and management panel for a nail studio in Curitiba, synced with Google Calendar and Instagram.


- Year
- 2026
- Role
- End-to-end product: data modeling, back end, admin panel, integrations, interface and CI/CD deployment.
- Stack
- Laravel 13
- Filament 5
- Livewire
- MySQL
- Google Calendar API
- Instagram API
- Docker
The problem
Appointments were arranged over chat, which led to clashes with the owner’s personal calendar, clients forgetting their slots, and manual work to promote services and offers.
By the numbers
- 3calendar sources checked before offering a slot
- 4reminder channels: email, in-app, WhatsApp and SMS
- 15 minGoogle Calendar sync interval
- 27automated test files
What was built
An availability engine that checks appointments, calendar blocks and Google Calendar events before offering a slot, so nothing gets double-booked.
Two-way Google Calendar sync over OAuth: appointments are pushed out and busy times are pulled back every 15 minutes.
Reminders by email, WhatsApp (Meta) and SMS behind a single channel interface, with per-channel opt-out.
A catalog that fetches Instagram posts daily and lets the owner pick which ones show on the site.
A Filament admin with a drag-and-drop calendar, promotions and coupons, revenue metrics and role-based access.
A signed public link where clients follow their appointment, updated in real time.
Screens

Service catalog with category filters and search.

Results gallery filtered by service type.

Instagram posts picked by the owner in the admin panel.

Cart with the chosen services, total duration and a discount coupon.

Date and time picker showing only slots that are actually free.

Client area with profile, bookings and notification preferences.
Outcome
Clients book on their own and the owner runs everything from one place, including what appears on the site, without needing a developer for day-to-day changes.