- Category
- Scheduling
- Year
- 2024
- Status
- Built
SalonPro
Scheduling built around three different users.
A full-stack appointment management system for hair salons, built as a portfolio project after CarpetCareManager. I used the project to push further into role-based application design, creating separate experiences for salon owners, employees and customers instead of showing every user the same interface.
Problem
Appointment software serves several people with very different needs. A salon owner needs an overview of the business, employees need their own schedules and performance information, while customers mainly need a simple way to book appointments and manage their account.
Key features
Technical approach
I built the project as a full-stack application with React, TypeScript, Sass and SWR on the frontend, backed by Node.js, Express and MySQL. JWT and Argon2 handle authentication and password security, while Chart.js is used for business and employee statistics. I also created a public-facing website alongside the application and used routing to separate the website experience from the authenticated application area.
What I’d improve
The project helped me improve significantly on what I had learned from CarpetCareManager, especially around role-specific interfaces and larger application flows. Looking back, I would simplify parts of the architecture, define permissions and shared data contracts more explicitly, and add stronger automated testing before expanding the feature set further.
- Solo project
- Ownership
- Owner · Employee · Customer
- User types
- Website · Full-stack app
- Scope
Other products
Questions about SalonPro?
I’m happy to share more about the technical decisions and implementation behind the project.