Express server RESTful API that manages the upload of video and image content to storage web services such as Cloudinary and allows sharing said content with other users and visitors of the platform.
It uses authentication via JSON web Token (JWT) with password encryption using Bcrypt, mailing with nodemailer and communication with a non-relational database (MongoDB) using the a ODM (Mongoose).
This project use the next dependencies for dev
Dependencie | Description |
---|---|
Eslint | Use Eslint with AirBnB rules |
Prettier | For format the style code |
Husky & lint-staged | For control the pre-commit |
nodemon | For the server to listen for changes and update itself |
[========]
- Clone this repository
git clone https://github.com/Zuniga63/backend-youtube.git
- Install the dependencies with node
npm install
- Create the .env file with
cp .env.example .env
- Write the credentials to the file .env
- After adding Cloudinary credentials run the script for create the presets
npm run cloudpresets
- Finished for dev run
npm run dev
and for productionnpm run start
swagger-ui-express is used for the documentation of the endpoints and these can be found in the path “/api-docs”