node-express-mongodb-jwt-rest-api-skeleton
Version:
Node.js express.js MongoDB JWT REST API - This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API)
471 lines (263 loc) • 9.49 kB
Markdown
## v9.0.5 (April 30, 2022)
* NPM updated
## v9.0.4 (January 23, 2020)
* Added extras tests ([#218](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/pull/218))
## v9.0.3 (January 23, 2020)
* NPM updated
* Fixed test failing in Windows 10 ([#221](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/221))
* Fixed mailgun in european regions ([#222](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/222))
* Fixed i18n and helmet in normal dependencies ([#224](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/224))
## v9.0.2 (November 16, 2020)
* NPM updated
* Fixed typo ([#214](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/pull/214))
## v9.0.1 (October 12, 2020)
* NPM updated
## v9.0.0 (October 3, 2020)
* Major breaking changes, now controllers and middleware is split in single files for more scalability and testability
* Added Jest setup
* Added first Jest test
* Added VS Code setup for debugging Jest and nodemon
* Added more reports for coverage, now there are three: 1 for Jest tests, 1 for mocha tests (end to end) and a 3rd that merges the previous 2.
* NPM updated
## v8.1.5 (July 30, 2020)
* NPM updated
## v8.1.4 (June 21, 2020)
* lint-staged package added
## v8.1.3 (June 21, 2020)
* Adding additional key to redis ([#200](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/200))
## v8.1.2 (June 21, 2020)
* NPM updated
## v8.1.1 (March 30, 2020)
* NPM updated
* Prettier updated to 2.x
## v8.0.1 (March 16, 2020)
* NPM updated
## v8.0.0 (March 16, 2020)
* This major version requires node 10+ because new bcrypt lib
* Use of bcrypt lib
* New test for users
* NPM updated
## v7.1.2 (January 12, 2020)
* Added cross-env to solve windows envionment issues
* Use Mongoose built in function to validate ID
* NPM updated
## v7.1.1 (September 29, 2019)
* Added new option MongoClient constructor
* NPM updated
## v7.1.0 (July 25, 2019)
* Postman Collection example now included in root directory. Now /login has a test that automatically gets ans sets token. Thank you Glen! ([#92](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/pull/92))
* NPM updated
## v7.0.2 (July 12, 2019)
* NPM updated
## v7.0.1 (July 10, 2019)
* NPM updated
## v7.0.0 (July 3, 2019)
* Making express-validator happy
## v6.1.20 (July 3, 2019)
* NPM updated
## v6.1.19 (June 12, 2019)
* NPM updated
## v6.1.18 (June 5, 2019)
* NPM updated
## v6.1.17 (June 4, 2019)
* NPM updated
* Typos
## v6.1.16 (May 27, 2019)
* NPM updated
## v6.1.15 (May 23, 2019)
* NPM updated
## v6.1.14 (May 22, 2019)
* NPM updated
## v6.1.13 (May 18, 2019)
* Add role validation to User creator, Fixes [#35](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/35)
## v6.1.12 (May 17, 2019)
* NPM updated
## v6.1.11 (May 14, 2019)
* NPM updated
## v6.1.10 (May 5, 2019)
* NPM updated
## v6.1.9 (Apr 24, 2019)
* NPM updated
## v6.1.8 (Apr 14, 2019)
* NPM updated
## v6.1.7 (Apr 11, 2019)
* NPM updated
## v6.1.6 (Apr 9, 2019)
* README.md updated
## v6.1.5 (Apr 9, 2019)
* README.md updated
## v6.1.4 (Apr 8, 2019)
* NPM updated
## v6.1.3 (Apr 7, 2019)
* NPM updated
## v6.1.2 (Apr 2, 2019)
* NPM updated
## v6.1.1 (Mar 30, 2019)
* NPM updated
## v6.1.0 (Mar 29, 2019)
* ENHANCEMENT: Refresh token endpoint now works as GET instead of POST
## v6.0.0 (Mar 28, 2019)
* BREAKING CHANGE: Token payload and expiration have changed
* BREAKING CHANGE: Constant in .env changed from `JWT_EXPIRATION` to `JWT_EXPIRATION_IN_MINUTES`
* FEATURE: Refresh token
## v5.0.1 (Mar 25, 2019)
* NPM update
## v5.0.0 (Mar 25, 2019)
* Big refactor
* FIX: send emails with mailgun
## v4.0.14 (Mar 25, 2019)
* Removed unused code
## v4.0.13 (Mar 25, 2019)
* FIX: remark
## v4.0.12 (Mar 25, 2019)
* FIX: Convert an email in request to lowercase
## v4.0.11 (Mar 25, 2019)
* README.md updated
## v4.0.10 (Mar 25, 2019)
* README.md updated
## v4.0.9 (Mar 25, 2019)
* README.md updated
## v4.0.8 (Mar 24, 2019)
* Removed normalizeEmail() function from validator.js. It was removing dots from email addresses. New function in utils to convert an email in request to lowercase. Fixes [#11](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/11)
## v4.0.7 (Mar 18, 2019)
* Travis CI changes
## v4.0.6 (Mar 18, 2019)
* CHANGELOG updated
## v4.0.5 (Mar 18, 2019)
* Fix itemAlreadyExists refactor
## v4.0.4 (Mar 18, 2019)
* itemAlreadyExists refactor
## v4.0.3 (Mar 18, 2019)
* itemAlreadyExists refactor
## v4.0.2 (Mar 18, 2019)
* itemNotFound refactor
## v4.0.1 (Mar 18, 2019)
* Refactor emailer
## v4.0.0 (Mar 18, 2019)
* Big refactor
* NPM update
## v3.0.4 (Mar 17, 2019)
* Bumped to v3.0.4
## v3.0.3 (Mar 17, 2019)
* Use of remark to format markdown files
## v3.0.2 (Mar 17, 2019)
* Use of remark to format markdown files
* Fix: use of parseInt now provides a base
## v3.0.1 (Mar 15, 2019)
* NPM updated
* README.md updated
## v3.0.0 (Mar 15, 2019)
* Demo added
## v2.3.3 (Mar 15, 2019)
* Enable Redis based on env variable
* API '/' route now renders an html view
## v2.3.2 (Mar 14, 2019)
* Test for npm publish
## v2.3.1 (Mar 14, 2019)
* Migrated to travis.com
## v2.3.0 (Mar 13, 2019)
* Added verification in response in test and development env
* Added verification for default admin user in seeding
* Added tests for cities and users with filters
* All functions documentated with JSDoc
* base.js renamed to utils.js
## v2.2.8 (Mar 12, 2019)
* Only builds in travis when tag is present
## v2.2.7 (Mar 12, 2019)
* Verification code is showed on development and testing environments
* NPM updated
## v2.2.6 (Mar 11, 2019)
* Use of travis ci to automate deploy to npm
* Added badge for tags in README.md
## v2.2.2 (Mar 11, 2019)
* Use of travis ci to automate build and deploy
* Added badge for travis build in README.md
## v2.2.1 (Mar 10, 2019)
* Added badge for npm downloads in README.md
## v2.2.0 (Mar 10, 2019)
* Filtering from multiple fields redesigned
## v2.1.10 (Mar 10, 2019)
* NPM updated
* FIX: creation of users were not saving data that validator was asking
## v2.1.9 (Mar 9, 2019)
* NPM run lint added
## v2.1.8 (Mar 9, 2019)
* New implementation for query on cities and users
* More data on seeding
* NPM updated
## v2.1.7 (Mar 4, 2019)
* More tests added
## v2.1.6 (Mar 4, 2019)
* Better testing
## v2.1.5 (Mar 4, 2019)
* Istambul nyc code coverage added
## v2.1.4 (Mar 4, 2019)
* Verification added only in tests responses at registration and forgot password
* NPM updated
* FIXED: User creation locale param was missing
## v2.1.3 (Mar 2, 2019)
* Verification removed from responses at registration and forgot password (They were being used for testing and somehow made it here)
## v2.1.2 (Mar 2, 2019)
* FEATURE: Install nodemon in devDependencies [#9](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/9)
* Typos
* README.md updated
## v2.1.1 (Feb 27, 2019)
* README.md updated
## v2.1.0 (Feb 27, 2019)
* i18n added for registration email and forgot password email
* Typos
## v2.0.1 (Feb 27, 2019)
* Error response regression
* NPM updated
## v2.0.0 (Feb 24, 2019)
* Breaking changes for success and error responses
* Added new endpoint in /profile/changePassword
* Fixes in tests
* Fixes in validations
* NPM updated
## v1.2.12 (Feb 18, 2019)
* NPM updated
* CHANGELOG fixes
* Typos
## v1.2.11 (Feb 11, 2019)
* NPM updated
* Removed pm2 from start script in package.json
* server.js now inits redis stuff only in production
## v1.2.10 (Feb 9, 2019)
* package.json updated
## v1.2.9 (Feb 9, 2019)
* CHANGELOG updated
## v1.2.8 (Feb 9, 2019)
* NPM updated
## v1.2.7 (Dec 4, 2018)
* FIXED: Error message standarization [#6](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/6)
* Role property is returned in profile
## v1.2.6 (Dec 1, 2018)
* FIXED: Password length validation in profile [#5](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/5)
* Role property is returned in profile
## v1.2.5 (Dec 1, 2018)
* Comments
## v1.2.4 (Dec 1, 2018)
* FIXED: Not standardized response on error [#4](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/4)
* NPM updated
## v1.2.3 (Nov 28, 2018)
* FIXED: Password not encrypted when updating in profile [#3](https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton/issues/3)
* NPM updated
## v1.2.2 (Nov 8, 2018)
* NPM updated
## v1.2.1 (Nov 5, 2018)
* Cache API responses only in production mode
## v1.2.0 (Nov 5, 2018)
* Use of REDIS to cache API responses
* NPM updated
## v1.1.3 (Oct 24, 2018)
* Seeding Fix due to changes on new mongo-seeding package
## v1.1.2 (Oct 23, 2018)
* NPM updated
## v1.1.1 (Sep 28, 2018)
* Clean and Seed with async/await
* Fixes
## v1.0.1 (Sep 21, 2018)
* Added keywords to package.json
## v1.0.0 (Sep 20, 2018)
* First stable release