Code Monkey home page Code Monkey logo

gobarber's Introduction

๐Ÿšง In Development ๐Ÿšง
Project being built along with Rocketseat's GoStack - RocketSeat

GitHub language count GitHub top language GitHub repo size in bytes Made by Rocketseat
Node.js version TypeScript version React.js version React Native version


๐Ÿ“ About the project

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.

ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย 

๐Ÿค– Back-End

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.

๐Ÿ›  Technologies

โš™๏ธ Finished features

  • 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

๐Ÿ–ฅ Front-End

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).

๐Ÿ›  Technologies

โš™๏ธ Finished features

  • Registration screen layout
  • Logon screen layout
  • Register in the application
  • Logon in the application

๐Ÿ“ฑ Mobile

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).

๐Ÿ›  Technologies

โš™๏ธ Finished features

  • Registration screen layout
  • Logon screen layout
  • Register in the application
  • Logon in the application

๐Ÿ Starting the project

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

Made with love by ๐Ÿ’š Lucas Pinho

LinkedIn Facebook Instagram

gobarber's People

Contributors

lhps avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.