This project contains a number of katas with instructions ordered in a proven path described in my book Agile Technical Practices Distilled
I know the stats look really bad :) There is some very ugly code to be refactored in this repository. Hopefuly as you implement the exercises in the katas these stats should improve.
Just run the test suite
yarn test
yarn test:ci
yarn mutants
yarn watch
yarn fizz
yarn leap
yarn fib
yarn stack
yarn roman
yarn prime
yarn tic
yarn yahtzee
yarn tennis
yarn rose
yarn golf
yarn smelly
yarn copier
yarn esa
yarn ci
or
yarn precommit
yarn lint
There are a few tools preconfigured in the project
- Code
- ESLint
eslint
: JavaScript and TypeScript linter that identifies and reports code quality issues.@typescript-eslint/parser
: Parser that allows ESLint to understand TypeScript syntax.typescript-eslint/eslint-plugin
: ESLint plugin that provides linting rules specific to TypeScript code.eslint-plugin-jest
: ESLint plugin with additional rules for Jest tests.eslint-plugin-prettier
: ESLint plugin that integrates Prettier into ESLint, enabling automatic formatting.eslint-plugin-import
: ESLint plugin that provides linting rules for importing modules.eslint-plugin-simple-import-sort
: ESLint plugin for sorting imports using a simple convention.
- Prettier
prettier
: Opinionated code formatter that enforces consistent code style.
- Type coverage
ts-coverage
: Tool for generating coverage reports for TypeScript projects.type-coverage
: Tool for measuring the percentage of type coverage in a TypeScript project.typescript-coverage-report
: Tool for generating coverage reports for TypeScript projects.
- ESLint
- Testing
- Libraries
jest
: JavaScript testing framework for writing unit tests.fast-check
: Property-based testing library for JavaScript and TypeScript.@stryker-mutator/core
: Core library for Stryker Mutator, a mutation testing framework for JavaScript and TypeScript.@stryker-mutator/jest-runner
: Stryker Mutator plugin for running mutation tests with Jest.@stryker-mutator/typescript-checker
: Stryker Mutator plugin for type checking TypeScript code during mutation testing.jest-extended-snapshot
: Additional Jest matchers for snapshot testing
- Libraries
- CI/CD
- Commit Lint
@commitlint/cli
: Command-line interface for commitlint, a tool to enforce commit message conventions.@commitlint/config-conventional
: Configuration preset for commitlint that enforces conventional commit message format. See: https://github.com/conventional-changelog/commitlint/blob/master/%40commitlint/config-conventional/README.md@commitlint/format
: Utility to format commitlint messages for printing.
- Husky
husky
: Git hooks management tool that allows running scripts before committing or pushing code.
- GitHub actions
- Build
- Dependabot
- Sonar
- Sonar cloud integration for code metrics
- CodeScene
- CodeScene cloud integration for code metrics
- Commit Lint