Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/deadmanshadow/microservice-sleepr
Sleepr is a scalable, efficient, and modular NestJS microservice, integral to a larger application architecture.
https://github.com/deadmanshadow/microservice-sleepr
express jest joi mongodb mongoose nestjs
Last synced: 10 days ago
JSON representation
Sleepr is a scalable, efficient, and modular NestJS microservice, integral to a larger application architecture.
- Host: GitHub
- URL: https://github.com/deadmanshadow/microservice-sleepr
- Owner: deadmanShadow
- Created: 2024-08-26T14:10:33.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-08-27T08:35:29.000Z (3 months ago)
- Last Synced: 2024-11-08T20:09:12.633Z (10 days ago)
- Topics: express, jest, joi, mongodb, mongoose, nestjs
- Language: TypeScript
- Homepage:
- Size: 187 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456
[circleci-url]: https://circleci.com/gh/nestjs/nest
A progressive Node.js framework for building efficient and scalable server-side applications.
# Sleepr Microservice
A **microservice** built with the [NestJS](https://nestjs.com/) framework, designed for efficiency, scalability, and modularity. This microservice, named **Sleepr**, is part of a larger application architecture.
## Features
- **Efficient Architecture**: Built on the progressive Node.js framework, NestJS.
- **Modular Design**: Easily extensible and maintainable.
- **Integrated with MongoDB**: Utilizes Mongoose for seamless database interactions.
- **Logging with Pino**: Fast and structured logging for production environments.## Technologies Used
- **NestJS**: A progressive Node.js framework for building efficient and scalable server-side applications.
- **TypeScript**: A typed superset of JavaScript that compiles to plain JavaScript.
- **MongoDB**: A NoSQL database for storing and retrieving data, integrated using Mongoose.
- **Mongoose**: An elegant MongoDB object modeling tool designed to work in an asynchronous environment.
- **Joi**: A powerful schema description language and data validator for JavaScript.
- **RxJS**: A library for reactive programming using Observables, to make it easier to compose asynchronous or callback-based code.
- **Pino**: A fast, low-overhead logging library, with Pino-HTTP and Pino-Pretty for enhanced logging capabilities.
- **ESLint**: A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript and TypeScript.
- **Prettier**: An opinionated code formatter to ensure consistent code style.
- **Jest**: A delightful JavaScript testing framework with a focus on simplicity.
- **Docker**: A platform to develop, ship, and run applications inside containers, used here for e2e testing.
- **Rimraf**: A deep deletion module for Node, used to clean up the build directory.
- **Express**: A minimal and flexible Node.js web application framework, providing a robust set of features for web and mobile applications.
- **Cookie-Parser**: Middleware to parse cookies attached to client requests.
- **Source-Map-Support**: Provides source map support for stack traces in node.js.## Installation
```bash
$ pnpm install# development
$ pnpm run start# watch mode
$ pnpm run start:dev# production mode
$ pnpm run start:prod# unit tests
$ pnpm run test# e2e tests
$ pnpm run test:e2e# test coverage
$ pnpm run test:cov
```