gobarber-api
gobarber-api copied to clipboard
:barber: An API for barber appointment and scheduling.
GoBarber API
An API for barber appointment and scheduling.
Features
A Node.js API built with Express and all the latest tools and best practices in development!
- ⚡ Express — A web framework for Node
- 💾 Sequelize — SQL dialect ORM for Node.js
- 🍂 MongoDB — document-based database
- 🔑 Redis — key-value data model
- ⌨️ Yup - Object schema validation
- 🔺 Sentry - cross-platform application monitoring
- 📧 Nodemailer - Send e-mails with Node.JS
- 💖 Lint — ESlint/Prettier/Editor Config
Dependencies
Prerequisites
In the next few weeks, I plan to include Docker directly in the repository with docker-compose, until there this step is required.
To run this server you will need three containers running on your machine.
To do so, you will need to run the following commands:
-
docker run --name redisbarber -p 6379:6379 -d -t redis:alpine
; -
docker run --name mongobarber -p 27017:27017 -d -t mongo
; -
docker run --name some-postgres -e POSTGRES_PASSWORD=docker -p 5433:5432 -d postgres
;
Remember: If you restart your machine, you will need to start again the server with docker start <container_id>
.
Getting started
Consider checking out the FrontEnd repository!
- Clone this repo using
https://github.com/jpedroschmitz/gobarber-api.git
- Move to the appropriate directory:
cd gobarber-api
.
- Run
yarn
to install dependencies.
- Copy the
.env.example
file and rename it to.env
.
- Add all the values for the environment variables.
- Run
yarn start
andyarn queue
to run the servers athttp://localhost:3000
.
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.