๐ง In Development ๐ง
Project being built along with Rocketseat's GoStack - RocketSeat
GoBarber is an application for barbers, where the barbers can register on the web application and can insert their employees and their schedules. Customers can register on the mobile application, being able to find employees who work on site and schedule the day and time to cut their hair.
The Back-End was developed with Node.js and TypeScript. For standardization and organization of the code, ESLint, Prettier and EditorConfig were used. The connection to the PostgreSQL database was made with DBeaver and Docker to create containers with TypeORM. For authentication and user access control was used JWT (Json Web Token). To upload images was used Multer. Architecture remade with DDD concept. It was used Jest to perform unit tests in the application.
- Register in the application
- Logon in the application
- Creation of a user in the application being able to upload his profile photo
- Creation of the user session being able to perform a login
- Scheduling created by a "barber / hairdresser"
- List of schedules made for the user with the active session
The Front-End was developed with React.js and TypeScript. For standardization and organization of the code was used ESLint, Prettier and EditorConfig. The styling was done with Styled-Components. The navigation screens were made with React Router DOM. The validation of login and registration was done with Yup. To connect with the Back-End was used Axios (REST Api).
- Registration screen layout
- Logon screen layout
- Register in the application
- Logon in the application
The Mobile was developed with React Native and TypeScript. For standardization and organization of the code was used ESLint, Prettier and EditorConfig. The styling was done with Styled-Components. The navigation screens were made with React Router DOM. The validation of login and registration was done with Yup. To connect with the Back-End was used Axios (REST Api).
- Registration screen layout
- Logon screen layout
- Register in the application
- Logon in the application
Clone the project: git clone https://github.com/lhps/GoBarber.git
๐ค To run the Back-End, you must first create a container in Docker and a PostgreSQL database in DBeaver.
Then open the terminal and run the following commands:
# to enter the Back-End folder
$ cd backend
# to download the dependencies
$ yarn
# to start the application on port 3333
$ yarn dev:server
Run tests on the back-end
# to run tests
$ yarn test
๐ฅ To run the Front-End, in another terminal tab, execute the following commands:
# to enter the Front-End folder
$ cd frontend
# to download the dependencies
$ yarn
# to start the application on port 3000
$ yarn start
Now access http://localhost:3000/
๐ฑ To run Mobile, you need an Android or iOS simulator (Mac only) running on your computer or connect your physical smartphone to USB. To learn how to install / configure, follow the RocketSeat tutorial.
Now, on another tab of the terminal, run the following commands:
# to enter the Mobile folder
$ cd mobile
# to download the dependencies
$ yarn
# for Android:
# first open the Android emulator
# to start the app on the simulator or on the Android physical smartphone connected to the USB device
$ yarn android
# for iOS:
# to launch the app on the simulator or on the physical iOS smartphone connected to the USB device (only using Mac)
$ yarn ios