A collection of step-by-step code katas designed to learn Test-Driven Development (TDD) with incremental levels of complexity.
This project provides hands-on practice with TDD using modern TypeScript, ESM modules, and contemporary testing tools. Each kata focuses on specific TDD concepts and programming fundamentals.
- TypeScript - Type-safe JavaScript with modern syntax
- ESM - ES6 modules for clean imports/exports
- Vitest - Fast and lightweight testing framework
- ESLint - Code linting and style enforcement
- Node.js 24+ - Modern runtime environment
- Node.js 24.0.0 or higher
- npm (comes with Node.js)
# Clone the repository
git clone https://github.com/imdhemy/tdd-kata.git
cd tdd-kata
# Install dependencies
npm installFollow the Red-Green-Refactor cycle:
- 🔴 Red: Write a failing test
- 🟢 Green: Write minimal code to make it pass
- 🟡 Refactor: Improve the code while keeping tests green
- Repeat: Move to the next test
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Feel free to:
- Start discussions or questions on the discussion board.
- Discussions could be:
- Questions about TDD practices.
- Suggestions for new katas.
- Improvements to existing katas.
- Sharing your TDD experiences.
- Any kind of feedback.