Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cmmvio/cmmv-fastify

HTTP adapter module for using Fastify as an HTTP server
https://github.com/cmmvio/cmmv-fastify

adapter cmmv fastify http server

Last synced: 1 day ago
JSON representation

HTTP adapter module for using Fastify as an HTTP server

Awesome Lists containing this project

README

        


CMMV Logo


Contract-Model-Model-View (CMMV)
Building scalable and modular applications using contracts.



NPM Version
Package License


Documentation
Report Issue

## Description

CMMV (Contract-Model-Model-View) is a minimalistic and modular framework for building scalable applications in TypeScript. Inspired by modern design patterns, CMMV uses contracts to define the entire application, from ORM entities to REST controllers and WebSocket endpoints, allowing for a highly structured and maintainable codebase.

## Legacy Setup (Manual)

If you prefer to set up the project manually, you can still install the necessary modules individually:

```bash
$ pnpm add @cmmv/fastify @fastify/compress @fastify/cors @fastify/helmet @fastify/secure-session @fastify/static @fastify/view
```

## Quick Start

The `@cmmv/fastify` module provides an alternative HTTP adapter based on [Fastify](https://fastify.dev/), allowing you to use Fastify middleware and features seamlessly with your CMMV application.

```typescript
import { Application } from "@cmmv/core";
import { ViewModule } from "@cmmv/view";

import {
FastifyAdapter,
FastifyModule
} from "@cmmv/fastify";

Application.create({
httpAdapter: FastifyAdapter, // Add the FastifyAdapter here
wsAdapter: WSAdapter,
modules: [
FastifyModule, // Add the FastifyModule here
],
services: [...],
contracts: [...]
});
```