Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jpedroschmitz/gobarber-api

:barber: An API for barber appointment and scheduling.
https://github.com/jpedroschmitz/gobarber-api

express redis sentry sequelize yup

Last synced: 21 days ago
JSON representation

:barber: An API for barber appointment and scheduling.

Awesome Lists containing this project

README

        




GoBarber




GoBarber API

An API for barber appointment and scheduling.



PRs Welcome


License MIT


## 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

- [Node.js](https://nodejs.org/en/) 8.0.0 ou >
- [Yarn](https://yarnpkg.com/pt-BR/docs/install)
- [Docker](https://www.docker.com/)

## 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 `._

## Getting started

_Consider checking out the FrontEnd [repository](https://github.com/jpedroschmitz/gobarber)!_

1. Clone this repo using `https://github.com/jpedroschmitz/gobarber-api.git`
2. Move to the appropriate directory: `cd gobarber-api`.

3. Run `yarn` to install dependencies.

4. Copy the `.env.example` file and rename it to `.env`.

5. Add all the values for the environment variables.

6. Run `yarn start` and `yarn queue` to run the servers at `http://localhost:3000`.

## Contributing

Please read [CONTRIBUTING.md](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](LICENSE.md) file for details.