This frontend interacts with this backend in order to compose a fullstack app, featuring authentication, appointment scheduling, and tattoo artist portfolios. It's the 5th project of the GeeksHub Academy Fullstack Bootcamp, showcasing real-world frontend development skills with React, Redux and Tailwind.
- User Authentication: Secure signup and login processes. 🔒
- Appointment Creation: Users can book appointments, with date and user profile validation. 📅
- Tattoo Artist Portfolios: Tattooists can upload examples of their work. 🎨
- Admin Dashboard: Full control over users, appointments, and tattoo works for administrators. 👩💼👨💼
- Redux Toolkit Ecosystem: Extense use of RTK Slices and createApi. 📚
- Tailwind CSS: Designed with Tailwind CSS. 🎨
- Custom components: Custom fully functional calendar and gallery components. 🎨
Get a copy of the project up and running on your local machine for development and testing purposes.
git clone https://github.com/pedrogardim/ink-frontend.git
cd ink-frontend
yarn install
yarn dev
You will need yarn installed, and also the backend set up and running.
/
- Landing page
- Home page for logged users
/login
- Login page/register
- Register page/profile
- Profile view / update page/appointments
- My appointments page (List, and filter appointments)/appointments/{id}
- See an specific appointment detais and update it
/gallery
- Tattoo artist portfolios page with search/gallery/{id}
- See an specific tattoo artist portfolio
/admin
- Admin dashboard page (only a super admin can access it)/admin/users
- Users CRUD/admin/appointments
- Appointments CRUD/admin/tattooWorks
- Tattoo works CRUD
- Add notifications 🔔 - So users know when their appointments are modified, created or deleted.
- Add image upload 📸 - So users can upload profile pictures and tattoo artist portfolios.
- Add Admin CRUD features 🎛️ - Add create, update, delete features.
- Appointments filter calendar: When selected a date in the calendar view, calendar dots only show current date.
- A big shoutout to the Geekshubs Academy for the opportunity to learn and grow as a developer.