{"repo":"steve-lebleu/typeplate","free":true,"listed":false,"github":"https://github.com/steve-lebleu/typeplate","clone":"git clone https://github.com/steve-lebleu/typeplate.git","description":"REST API boilerplate with Typescript, Express.js, Typeorm and Mocha.","language":"TypeScript","stars":333,"topics":["node","api","api-rest","typescript","typeorm","express","boilerplate","authentication","upload-file","apidoc"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"Ready to use RESTful API boilerplate builded with Express.js, Typescript, TypeORM and Mocha. 🤘 Thanks to Daniel F. Sousa for inspiration with his ExpressREST API boilerplate :beer: Features - Containerization - Docker with Dockerfile. - Docker compose with docker-compose.yml with mariadb and phpmyadmin. - Basics - Clear & clean code architecture with classic layers such controllers, services, repositories, models, ... - Object Relational Mapping with typeorm. - Entity generation with rsgen. - Business validation with self designed business members. - Logs management with morgan and winston. - Changelog completion with auto-changelog. - Testing with included unit and integration test sets builded with mocha, chai, sinon and supertest. - Documentation with api-doc. - Security - SSL secure connection with native HTTPS node module. - Cross Origin Resource Sharing with CORS. - Securized HTTP headers with helmet. - HTTP header pollution preventing with hpp. - API request rate limit with express-rate-limit. - Route validation with joi. - HTTP friendly errors with boom and http-status. - Authentication - JWT authentication process with passport.js. - oAuth authentication process with passport.js. - Sending transactional emails with cliam. - Performances - HTTP request cache with memory-cache. - Database query cache with typeorm caching. - Assets management - Customizable file upload with multer. - Customizable image resizing with jimp. Table of contents - Getting started - Entity ge","default_branch":null,"files":null,"tree":[],"storefront":"/r/steve-lebleu","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/steve-lebleu/typeplate/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}