Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arthurpedroti/node-backend-template
A template for NodeJS backend projects
https://github.com/arthurpedroti/node-backend-template
aws-s3 aws-ses cache commitlint eslint express handlebars jest jwt login-system mongodb multer nodemailer notifications postgres prettier rate-limiter-flexible redis typeorm typescript
Last synced: 2 months ago
JSON representation
A template for NodeJS backend projects
- Host: GitHub
- URL: https://github.com/arthurpedroti/node-backend-template
- Owner: ArthurPedroti
- License: mit
- Created: 2020-05-28T12:46:35.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T18:37:28.000Z (almost 2 years ago)
- Last Synced: 2024-10-09T11:05:00.968Z (2 months ago)
- Topics: aws-s3, aws-ses, cache, commitlint, eslint, express, handlebars, jest, jwt, login-system, mongodb, multer, nodemailer, notifications, postgres, prettier, rate-limiter-flexible, redis, typeorm, typescript
- Language: TypeScript
- Homepage:
- Size: 2.74 MB
- Stars: 31
- Watchers: 2
- Forks: 2
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Welcome to my Backend Template 👋
A template for NodeJS backend projects
Description |
Languages |
Technologies |
Databases |
Install |
Usage |
License## Description
This template was coded in Typescript, TypeORM and Express, contains a login with a password recovery system. Also, have a notifications provider with MongoDB and a Redis provider to be used for cache. The recovery password email system was setup with AWS SES for production and the profile avatar setup to be saved with AWS S3.For commits, we setup a config with commitlint/commitizen/husky and for. For code analyses, we are using ESLint and Prettier. For tests, we are using JEST. You can see at the technologies section, all dependencies we are using.
To use this template you will need to configure the files bellow:
- ormconfig.json
- .envIt also has an insomnia file with the api docs to test all the login features, only need to reconfigure the "Response => Body Attribute" with the Request route.
Utils:
Generating the app_secret: http://www.md5.cz/ (type some random text and generate a hash)
AWS credentials: Take it creating a new user on Amazon## :computer: Languages
- **#TypeScript**
## :books: Technologies
- **#Express**
- **#TypeORM**
- **#ESLint**
- **#Prettier**
- **#AWS S3**
- **#Multer**
- **#AWS SES**
- **#Celebrate**
- **#JWT**
- **#Nodemailer**
- **#Handlebars**
- **#TSringe**
- **#ioRedis**
- **#rate-limiter-flexible**
- **#Commitlint**
- **#Commitizen**
- **#Husky**## :file_cabinet: Databases
- **#Postgres**
- **#MongoDB**
- **#Redis**## Install
Init your repository before install, or you will need to reinstall husky.
```sh
yarn install
```## Usage
```sh
yarn dev:server
```## Author
👤 **Arthur Pedroti**
* Github: [@ArthurPedroti](https://github.com/ArthurPedroti)
* Linkedin: [@ArthurPedroti](https://www.linkedin.com/in/arthurpedroti)## 🤝 Contributing
Contributions, issues and feature requests are welcome!
Feel free to check [issues page](https://github.com/ArthurPedroit/Template/issues). You can also take a look at the [contributing guide](https://github.com/ArthurPedroit/Template/blob/master/CONTRIBUTING.md).## Show your support
Give a ⭐️ if this project helped you!
## 📝 License
Copyright © 2020 [Arthur Pedroti](https://github.com/ArthurPedroti).
This project is [MIT](https://github.com/ArthurPedroit/Template/blob/master/LICENSE) licensed.---
Made by :blue_heart: by [Arthur Pedroti](https://github.com/ArthurPedroti)