Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/eliasgcf/fastfeet-api

🚚 Rest api for fastfeet application - made with express framework - using docker, postgreSQL and sequelize
https://github.com/eliasgcf/fastfeet-api

Last synced: 12 days ago
JSON representation

🚚 Rest api for fastfeet application - made with express framework - using docker, postgreSQL and sequelize

Awesome Lists containing this project

README

        


Logo


Express Application for FastFeet project


A fast way to manage delivery companies!


GitHub top language


Made by

Repository size


GitHub last commit


Repository issues

GitHub


About the project   |   
Technologies   |   
Getting started   |   
How to contribute   |   
License



Run in Insomnia

## 🚚 About the project

With this API is possible to manage users, recipients, delivery man and everything what is needed for the delivery flow.

To confirm the delivery was finished, the delivery man must send a recipient signature photo. This is one of the application business rules.

To see the **web client**, click here: [FastFeet Web](https://github.com/EliasGcf/fastfeet-web)

To see the **mobile client**, click here: [FastFeet Mobile](https://github.com/EliasGcf/fastfeet-mobile)

## 🚀 Technologies

Technologies that I used to develop this api

- [Node.js](https://nodejs.org/en/)
- [Express](https://expressjs.com/pt-br/)
- [Sequelize](https://sequelize.org/)
- [Mongoose](https://mongoosejs.com/)
- [PostgreSQL](https://www.postgresql.org/)
- [MongoDB](https://www.mongodb.com/)
- [Docker](https://www.docker.com/products/docker-desktop)
- [Docker Compose](https://docs.docker.com/compose/install/)
- [Multer](https://github.com/expressjs/multer)
- [Nodemailer](https://nodemailer.com/about/)
- [Handlebars](https://handlebarsjs.com/)
- [JWT-token](https://jwt.io/)
- [Bee-Queue](https://github.com/bee-queue/bee-queue)
- [Yup](https://github.com/jquense/yup)
- [Date-fns](https://date-fns.org/)
- [Nodemon](https://nodemon.io/)
- [Sucrase](https://github.com/alangpierce/sucrase)
- [Eslint](https://eslint.org/)
- [Prettier](https://prettier.io/)
- [EditorConfig](https://editorconfig.org/)

## 💻 Getting started

Import the `Insomnia.json` on Insomnia App or click on [Run in Insomnia](#insomniaButton) button

### Requirements

- [Node.js](https://nodejs.org/en/)
- [Yarn](https://classic.yarnpkg.com/) or [npm](https://www.npmjs.com/)
- [Docker](https://www.docker.com/products/docker-desktop) and [Docker Compose](https://docs.docker.com/compose/install/)

**Clone the project and access the folder**

```bash
$ git clone https://github.com/EliasGcf/fastfeet-api.git && cd fastfeet-api
```

**Follow the steps below**

```bash
# Install the dependencies
$ yarn

# Make a copy of '.env.example' to '.env'
# and set with YOUR environment variables.
$ cp .env.example .env

# Start the services with docker-compose
$ docker-compose up -d

# Once the services are running, run the migrations
$ yarn sequelize db:migrate

# Run the seed to create the 'admin-user'
$ yarn sequelize db:seed --seed 20200212180839-admin-user.js

# Well done, project is started!
```

## 🤔 How to contribute

**Make a fork of this repository**

```bash
# Fork using GitHub official command line
# If you don't have the GitHub CLI, use the web site to do that.

$ gh repo fork EliasGcf/fastfeet-api
```

**Follow the steps below**

```bash
# Clone your fork
$ git clone your-fork-url && cd fastfeet-api

# Create a branch with your feature
$ git checkout -b my-feature

# Make the commit with your changes
$ git commit -m 'feat: My new feature'

# Send the code to your remote branch
$ git push origin my-feature
```

After your pull request is merged, you can delete your branch

## 📝 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

Made with 💜  by Elias Gabriel 👋  [See my linkedin](https://www.linkedin.com/in/eliasgcf/)