Skip to content

Latest commit

 

History

History
188 lines (128 loc) · 7.02 KB

README.md

File metadata and controls

188 lines (128 loc) · 7.02 KB

TATTOO STUDIO web design

This is the SIXTH PROJECT of the Full Stack Development Bootcamp with Geekshubs Academy. A front-end site based on project number 4 of the bootcamp (Tattoo studio searching engine). Made with React.

Web cover picture. Heavily inked arm in blueish colors



FRONT-END STACK:

GitHub

Docker

React

BACK-END STACK:
Node.jsTypeScriptExpress.jsMySQLDocker

Table of Contents
  1. Description (ES)
  2. Challenge
  3. Instalation
  4. Views
  5. Future improvements / New features
  6. Contributions
  7. Author / Contact

Project description (ES)

Services management tool for a tattoo studio (front-end side)
Read about it (only in spanish)
Front-end para una API de gestión de citas para un estudio de tatuajes:

En esta ocasión se nos requiere generar la parte frontal que conecte con nuestra API encargada de gestionar el modelo de negocio de un estudio de tatuajes.

Para ello, generaremos unas vistas sencillas que nos permitan registrarnos y logearnos como usuarios, ver nuestro perfil de usuario y modificarlo, así como ver nuestras citas. Además, necesitaremos poder ver los servicios que ofrece el estudio y poder concertar nuevas citas. Por último, debemos tener una vista de administrador desde la que se podrá acceder a la información de la aplicación y modificarla según proceda.

En definitiva, tendremos que ser capaces de crear una parte frontal de la app lo suficientemente versátil como para que clientes, profesionales y un administrador puedan acceder y hacer uso de ella.

Challenge 🎯

The proposed exercise is to create a front-end site connecting to the Tattoo Studio API from a previous project.

Minimum viable product (MVP):

✅ Landing page (home)

✅ User register

✅ User login

✅ Profile view (see info and update)

✅ Own appointments view (see info and delete)

✅ Service view (can be integrated in landing/home page)

✅ Create new appointments view (as User)

✅ See and delete users (as Admin)

Extras:

✅ Service detail view

✅ See and delete services (as Admin)

⬜️ ( in progress ) create and update services (as Admin)

✅ See and delete appointments (as Admin)

⬜️ Appointment detail view

⬜️ See an specific user (as Admin)

⬜️ Update user (as Admin)

✅ ( partially❗️) Data validation (check all data format before sending it to the back-end...)

✅ ( partially❗️) Error handling (displaying helpful messages when an error occurs, both form-filling related errors and back-end failed requests/responses)

Instalation (local)

  1. Clone this repository
  2. Run $ npm install in terminal
  3. Connect repository with database
  4. $ npm run dev

⚠️ Since we will be fetching information from our own API from a previous project, here is how to install the back-end project and how to populate seeders - in case you run out of items to delete :)
  1. Clone this repository
  2. Run $ npm install in terminal
  3. Connect repository with database
  4. Run migrations: $ npm run run-migrations
  5. Run seeders: $ npm run seeders
  6. Start server: $ npm run dev

Deployment

🚀 Tattoo Studio 🚀

Views

Landing


Register / Login


See profile / Edit profile


Appointments

Admin

Future improvements

✅ See and delete services (as Admin)

✅ See and delete appointments (as Admin)

⬜️ Appointment detail view

⬜️ Appointment CRUD for Admin

⬜️ Edit appointments as user (create, get and delete are done ✅)

⬜️ Add avatar/picture to profile

⬜️ See an specific user (as Admin)

⬜️ Update user (as Admin)

⬜️ ( in progress ) Services CRUD (as Admin)

✅ ( partially❗️) Data validation (check all data format before sending it to the back-end...)

✅ ( partially❗️) Error handling (displaying helpful messages when an error occurs, both form-filling related errors and back-end failed requests/responses)

Contributions

If you have any comment or suggestion, feel free to reach out to me. My contact is down below. Or you could as well either:

  1. Open an 'issue' here in this project
  2. Fork this repository
    • Create a new branch
      $ git checkout -b feature/yourUserName-fix
      
    • Commit your changes
      $ git commit -m 'feat: updating/fixing/improving whatever it is'
      
    • Push to the branch
      $ git push origin feature/yourUserName-fix
      
    • Create a Pull Request

Author

GitHub