UNPKG

@kingdom-sdk/core

Version:

Core module to design DDD applications in TypeScript

67 lines (42 loc) 2.13 kB
# 🏰 Kingdom SDK: Core module Core module to design DDD applications in TypeScript. ## Features See the [changelog](./CHANGELOG.md) to know all the features supported. ## Installation Use the package manager [npm](https://npmjs.org) to install `@kingdom-sdk/core`. ```bash npm install @kingdom-sdk/core ``` You can use [yarn](https://yarnpkg.com/) as well. ```bash yarn add @kingdom-sdk/core ``` ## Development Dependencies - [**TypeScript**](https://www.npmjs.com/package/typescript): Add support to static typing. - [**TS node**](https://www.npmjs.com/package/ts-node): TypeScript interactive shell (REPL). - [**TS config paths**](https://www.npmjs.com/package/tsconfig-paths): Simplify imports using an custom "@". - [**ESLint**](https://www.npmjs.com/package/eslint): Style and code enforcement. - [**Prettier**](https://www.npmjs.com/package/prettier): Style enforcement. - [**Babel**](https://www.npmjs.com/package/@babel/core): JS compiler. - [**Husky**](https://www.npmjs.com/package/husky): Git hooks utility (pre-commit). - [**Lint staged**](https://www.npmjs.com/package/lint-staged): Run style check only for staged files (pre-commit). - [**Jest**](https://www.npmjs.com/package/jest): Testing framework. ## Production Dependencies - [**UUID**](https://www.npmjs.com/package/uuid): UUID generator. - [**Object Hash**](https://www.npmjs.com/package/object-hash): Hashing utility. ## Adding a Git hook After installing the dependencies, automatically the script `prepare` will set up the husky to git hooks. To add a script to be run before every commit (such as code enforcement), follow the example below or edit by hand the [`pre-commit`](.husky/pre-commit) file. ```bash yarn husky add .husky/pre-commit "yarn lint-staged" ``` ## REPL You can test sorts of TypeScript code interactively through the `ts-node` executable: ```bash yarn ts-node ``` ## Contributing Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Please make sure to update tests as appropriate. ## License [MIT](https://choosealicense.com/licenses/mit/)