A web app for scheduling appointments between clients and service experts. The appointments are displayed in an interactive calendar.
I was motivated to practice React with TypeScript for the front end and to learn NestJS for the back end. The goal was to create an application similar to Fresha with some of its features.
- Create/Read/Update/Delete an appointment/client/expert/service
- Resource scheduling for expert assignments
- Drag and drop appointments
- Resize appointments to change their duration
- Multiple calendar views: month, week, day, agenda
- React
- TypeScript
- Redux Toolkit
- Redux Toolkit Query
- react-big-calendar
- NestJS
- TypeORM
- PostgreSQL
- react-hook-form
- zod validation
- TailwindCSS
- PrimeReact
- react-toastify
- Faker.js
Run the following command: docker compose up