Nest Prisma Rest Api Boilerplate

screenshot of Nest Prisma Rest Api Boilerplate
nestjs
prisma

Nest Prisma Rest Api Boilerplate

Nest + Prisma + TypeScript | REST API Starter repository

Overview:

This product is a Nest + Prisma + TypeScript starter repository that provides a production-ready REST API. It includes features such as error handling, logging system, database seeds/migrations, built-in authentication using JWT, route guards, and model events listener. The repository also comes with a CI/CD pipeline using Github Actions, advanced ESLint/TSLint configuration, shared services/constants/helpers, and middleware/interceptor implementation example.

Features:

  • Error Handling: Exception filters are implemented for error handling in the REST API.
  • Logging System: The repository includes a logging system to track and log application events.
  • DB Seeds/Migrations: Database seeds and migrations are provided to easily set up and maintain the database.
  • Built-in AuthModule: An authentication module is included, utilizing JWT for token-based authentication.
  • Route Guards: Route guards are implemented to protect certain routes and control access to them.
  • Model Events Listener: Model events listener allows for specific actions to be taken when models are created.
  • Deployable: The repository is deployable and includes a CI/CD pipeline using Github Actions.
  • Advanced ESLint/TSLint config: The repository has an advanced configuration for ESLint and TSLint, including auto-fix options.
  • Shared services/constants/helpers: Shared services, constants, and helpers are provided to facilitate development.
  • Middlewares/Interceptors implementation example: An example of implementing middlewares and interceptors is included.

Installation:

To install and set up the theme, follow these steps:

  1. Clone the repository:
git clone [repository_url]
  1. Install the dependencies:
npm install
  1. Run the app:
npm run start

Summary:

This Nest + Prisma + TypeScript starter repository provides a production-ready REST API with various features and components. It includes error handling, logging, database management, authentication, route protection, and more. The repository also comes with a comprehensive ESLint/TSLint configuration and examples of implementing middlewares and interceptors. Additionally, it offers easy installation and deployment with a CI/CD pipeline using Github Actions. It is a useful resource for developers starting a new Nest + Prisma + TypeScript project.

nestjs
Nest

A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript.

prisma
Prisma

Prisma is a server-side library that helps developers read and write data to the database in an intuitive, efficient and safe way.

fullstack
Fullstack Boilerplates

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.