# ddd-scaffold

> All things you'll need to setup a DDD project.

Latest version **1.5.11** (published 2022-06-02) · private license · 0 weekly downloads

## Install

```sh
npm install ddd-scaffold
pnpm add ddd-scaffold
yarn add ddd-scaffold
bun add ddd-scaffold
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.5.11 |
| Published | 2022-06-02 |
| First published | 2021-07-10 |
| Weekly downloads | 0 |
| License | private |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 9 |
| Unpacked size | 569.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Ricardo Rodriguez Medina |
| Maintainers | siendoricardo |

## Links

- npm: https://www.npmjs.com/package/ddd-scaffold
- Repository: https://github.com/RicardormDev/ddd
- Homepage: https://github.com/RicardormDev/ddd#readme
- Issues: https://github.com/RicardormDev/ddd/issues
- npm.io page: https://npm.io/package/ddd-scaffold

## Dependencies (9)

- [bson](https://npm.io/package/bson.md) ^4.5.1
- [debug](https://npm.io/package/debug.md) ^4.3.1
- [lodash](https://npm.io/package/lodash.md) ^4.17.21
- [nanoid](https://npm.io/package/nanoid.md) ^3.3.1
- [winston](https://npm.io/package/winston.md) ^3.3.3
- [grpc-tools](https://npm.io/package/grpc-tools.md) ^1.11.1
- [@grpc/grpc-js](https://npm.io/package/@grpc/grpc-js.md) ^1.3.3
- [google-protobuf](https://npm.io/package/google-protobuf.md) ^3.20.0-rc.2
- [reflect-metadata](https://npm.io/package/reflect-metadata.md) ^0.1.13

## Recent versions

- 1.5.11 (latest) — 2022-06-02
- 1.5.10 — 2022-04-27
- 1.5.9 — 2022-04-21
- 1.5.8 — 2022-04-21
- 1.5.7 — 2022-04-20
- 1.5.6 — 2022-04-20
- 1.5.5 — 2022-04-20
- 1.5.4 — 2022-04-20
- 1.5.3 — 2022-04-20
- 1.5.2 — 2022-04-19
- 1.5.1 — 2022-04-16
- 1.5.0 — 2022-04-16
- 1.4.8 — 2022-04-13
- 1.4.7 — 2022-04-13
- 1.4.6 — 2022-04-13
- … 23 more at https://npm.io/package/ddd-scaffold/versions

## README

# RDDD Framwork

This project includes all the required interfaces and abstract classes
to build a fully structured DDD project.

This is lacking of some features that will be added as the main project 
progresses.

It is needless to mention that everything is built-in is written in and for a typescript project.

## Summary

1. [Core Elements](#core-elements)
2. [Documentation](#documentation)
3. [Tools & Utilities](#tools--utilities)
4. [Expected Errors Library](#expected-errors-lib)

## Installing

Using npm:
```bash
$ npm install ddd-scaffold 
```

Using yarn:
```bash
$ yarn add ddd-scaffold 
```

## Core Elements

- It includes an interface for building **Entities**
- It includes an interface for building **ValueObjects**
- It includes a full library for expected errors called **ErrorOperations**.

## Documentation

The project includes a documentation at _/docs/_, open it at your favourite 
browser and read it to know where to start.

## Tools & Utilities

1. **Guard** This includes some tools to pre-validate arguments for the different
factories you'll build across the Entities and ValueObjects.
   
2. **ObjectUtilies** Is created to parse strings to object/primitives when using
those at DTOs or similar.
   
3. **Enum** Basically a tool with different tools to work with typescript enums

4. Finally and not less important, a logger built with winston, for a basic integration
   for it. You should modify that file for bigger approaches or just write everything again
   with the desired elements in it.
   
## Expected Errors Lib.

The project includes different methods that will help you to handle
error that requires a message or a return. Expected error can be traduced to
something like: "Missing Item"

_You should firstly should read the documentation._

   - **GResponse** Built for GRPC responses. 
   - **AResponse** Built for HTTP responses. 
   - **Result** Built general proposed that just need a message. 

OperationResult, is just for the abstract factory builder.

## Notes

 - This project is not finished.
 - Examples will be added in the future, tho you should read more about DDD.

---
_Source: https://npm.io/package/ddd-scaffold · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
