Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/puristajs/purista

A typescript framework for building backend services and api in modern, modular and scalable way with event-driven patterns
https://github.com/puristajs/purista

backend backend-api backend-server backend-service cqrs cqrs-framework ddd-architecture event-driven event-driven-architecture event-sourcing eventbus eventsourcing framework javascript message-driven openapi rabbitmq swagger typescript typescript-library

Last synced: 13 days ago
JSON representation

A typescript framework for building backend services and api in modern, modular and scalable way with event-driven patterns

Awesome Lists containing this project

README

        

# PURISTA

**Let developers focus on pure business logic**

![npm (scoped)](https://img.shields.io/npm/v/@purista/core?label=latest%20version&logo=npm&style=for-the-badge)

A backend framework for keeping professional software development fast, efficient, secure and maintainable!
Build awesome products on one code base - ready to be deployed on edge/IoT, server or cloud.
Run your application as a single instance, microservices or as cloud functions without touching your business logic.

Highly modular and easy to extend and to be customized for your needs.

**Visit [purista.dev](https://purista.dev)**

**Follow on Twitter [@purista_js](https://twitter.com/purista_js)**
**Join the [Discord Chat](https://discord.gg/9feaUm3H2v)**

PURISTA - Typescript framework for IoT, microservices, and serverless | Product Hunt

---

![PURISTA](advertise_large.svg)

This framework adapts and combines a wide range of different patters from domain driven design, cqrs, microservice, event sourcing and lambda functions.

It is built from the ground up in typescript and highly focuses on schema, and auto generation of types, input-output-validation, OpenApi documentation (swagger) and tracing via OpenTelemetry.

**The main goal is to let developers keep focusing on solving business requirements while building robust & maintainable software fast and efficient in professional business environments.**

**Visit [purista.dev](https://purista.dev)**

## Quick start

Create a new project folder and simply run:

```bash
npx @purista/cli init
```

The CLI tool will guide you through all the steps.

After successful init, simply start adding your business logic by adding your first service.

```bash
purista add service
```

As soon as you've created your first service, you can start adding commands and subscriptions to implement your business logic.
To add a command to your service, use the CLI tool.

```bash
purista add command
```

## Security

Please help us to provide a secure software.
See: [Security](./SECURITY.md)

## Contributors

Contributors are welcome!

[![Sebastian Wessel](https://contrib.rocks/image?repo=sebastianwessel/purista)](https://github.com/sebastianwessel/purista)

[PURISTA handbook](website/doc/handbook/)