Compass Service

screenshot of Compass Service
express
nestjs
prisma

Nestjs backend service.

Overview

The compass-service 2.0 is a project with various features and capabilities for developing and managing web applications. It uses a Monorepo structure, making it easy to extend services and share resources. It supports TypeScript, Jest, Airbnb ESLint, and Prettier. It also includes features like Google reCAPTCHA v3 integration, API versioning, interface parameter constraints, automatic data conversion, Prisma ORM for database management, unified response interceptor, JWT authentication and user permission verification, email service support, Swagger API documentation, and more.

Features

  • Monorepo structure: Easy to extend services and share resources.
  • TypeScript/Jest/Airbnb ESLint/Prettier support: Provides a TypeScript environment and supports code formatting and linting with Jest and Airbnb ESLint rules.
  • Environment variable control: The project supports environment variables that can be controlled using a .env file.
  • Google reCAPTCHA v3 integration: Supports verification of human interaction with Google reCAPTCHA v3.
  • API versioning: Supports multiple versions of APIs.
  • Interface parameter constraints: Enforces constraints on API input parameters and converts data to the expected type automatically.
  • Prisma ORM database management: Includes features for managing and maintaining database schemas, data models, and database migrations.
  • Unified response interceptor: Implements a response interceptor to standardize the returned data format.
  • JWT authentication and user permission verification: Supports JWT authentication and verifies user permissions.
  • Email service support: Integrates with an email service for sending emails.
  • Logging middleware and inbound request monitoring: Includes a logging middleware that monitors and logs inbound requests.
  • Swagger API documentation: Supports generating API documentation using Swagger.
  • Security headers with helmet: Implements secure response headers with the helmet library.
  • CircleCI automatic integration and deployment: Supports automatic integration and deployment with CircleCI.
  • AI conversation feature based on Chat GPT: Supports AI-powered conversation functionality based on Chat GPT.
  • Authorization management: Supports management of authorization and permissions.
  • Todo list management: Supports managing todo lists.
  • Role management: Supports managing user roles.
  • User management: Supports managing users.

Summary

The compass-service 2.0 is a comprehensive project template for developing web applications. It includes a range of features such as Monorepo structure, TypeScript support, Google reCAPTCHA integration, API versioning, database management with Prisma ORM, unified response handling, JWT authentication, and more. It also provides installation instructions to get started with the project.

express
Express

Express.js is a simple Node.js framework for single, multi-page, and hybrid web applications.

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

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.

template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.

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.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.