/english-talking-api

This API aims to provide users with the possibility of conducting dialogues in English where the conversations and answers are registered and evaluated by the users themselves. :alien:

Primary LanguageTypeScriptMIT LicenseMIT

logo

This API aims to provide users with the possibility of conducting dialogues in English where the conversations and answers are registered and evaluated by the users themselves.
👽

Open Source Love License: MIT

Table of Contents

Overview

This is a RestFull API built in the javaScript language using Node.js technology and postgresSQL database

We use the Eslint, Prettier, editorconfig and Airbnb Style Guide integrations as an automatic code formatter. Please download the plugins in your editor.

  1. ESLint
  2. Prettier
  3. Editor config

For make sure Prettier formats on save. Insert "editor.formatOnSave": true into your User Settings if you use VSCode. To learn more, you can be this post

The tests are produced using Jest and supertest

See a API Documentation

Running the Project

Cloning the project

$ git clone https://github.com/barbosamaatheus/english-talking-api
$ cd english-talking-api

Starting the API

# Creating the database Docker image:
# Within the project, there is already a docker-compose.yml file that has the
# PostgreSQL as a database, just have Docker(https://www.docker.com/) installed on your machine.
$ docker-compose up -d # Will start in the background and will not block the shell
# Install all project dependencies
$ yarn # or npm install
# Running migrations to the database
$ yarn typeorm migration:run
# Starting the project
$ yarn dev
## You should receive a "Server started!" on your terminal

Authentication

Authentication is based on Bearer Authentication.

To authenticate, you must register as a user to receive an access token. Follow the Register User documentation

In requests for the Dialogue module, your access token must be passed through the 'Authorization' attribute in the request header with the word Bearer as prefix.

Contributing

Thank you for being interested on making this project better. We encourage everyone to help improving this project with some new features, bug fixes and performance issues. Please take a little bit of your time to read our guides, so this process can be faster and easier.

Contribution Guidelines

Take a moment to read about our Contribution Guidelines so you can understand how to submit an issue, commit and create pull requests.

Code of Conduct

We expect you to follow our Code of Conduct. You can read it to understand what kind of behaviour will and will not be tolerated.

Need help?

If you need help with this, feel free to open an issue with a description of the problem you're facing. Or, if you prefer, you can send email to maatheusb96@gmail.com
You also could join our discord team in case you need any help or have any questions. Join discord team.

License

MIT License ©