This repository contain a Node.js API REST in the backend, a ReactJS application in the frontend and a React Native mobile app, using Typescript.
This is the GoBarber application, which is a service scheduling platform for owners of barbershops or beauty salons. In this application, the user can access all registered service providers through a mobile application, with which the user can choose a provider to book their appointment.
The service provider, through a web interface, is able to have access to all their schedules, being able to see all those who are busy as well as those that are available.
** Node.js **: it is a REST API that does all the CRUD of the application, data persistence, exception handling and that serves data for both the front-end and the mobile.
** ReactJS **: it is a web page on which the service provider has access to the entire schedule of appointments.
** React Native **: is an application in which the user has access to all service providers registered in the App, with this he can make an appointment that the provider of choice.
Design made by Tiago Luchtenberg
![]() |
![]() |
![]() |
![]() |
![]() |
-
Docker running a PostgreSQL container.
-
MongoDB running on a container.
-
Redis running on a container.
-
A device or an iOS or Android emulador.
# Clone the project:
$ git clone https://github.com/cintiazago/gobarber
$ cd cintiazago/gobarber
Configure MongoDB, Postgres and Redis on the ormconfig.json file (create this file on the root directory of the backend project, using the example file)
Create and configure the .env file on the root directory of the backend project using the example file.
# Change to backend directory:
$ cd backend
# Install dependencies:
$ yarn
# Run the migrations:
$ yarn typeorm migration:run
# Run the application:
$ yarn dev:server
# The server will start at port 3333 - access http://localhost:3333
# Change to frontend directory:
$ cd web
# Install dependencies:
$ yarn
# Run the application:
$ yarn start
# The application will start at port 3000 - access http://localhost:3000
# Change to mobile directory:
$ cd mobile
# Install dependencies:
$ yarn
# Run the application:
$ yarn ios ou yarn android