Skip to content
/ dx Public template

An opinionated, production-ready boilerplate for TypeScript projects, designed to provide an optimal developer experience (DX). It comes pre-configured with best practices and essential tools for streamlined development, including building, linting, formatting, testing, and CI/CD.

License

Notifications You must be signed in to change notification settings

kamdz/dx

Repository files navigation

@kamdz/dx

@kamdz/dx is an opinionated, production-ready boilerplate for TypeScript projects, designed to provide an optimal developer experience (DX). It comes pre-configured with best practices and essential tools for streamlined development, including building, linting, formatting, testing, and CI/CD. Every file and configuration in this project serves as a blueprint for future projects.

🚀 Quick start:

npx @kamdz/dx
# or
npx @kamdz/dx [path]

✨ Features

  • TypeScript for static typing, with tsup & tsx for builds and development
  • ESLint 9 for code linting and quality checks
  • Prettier for consistent code formatting
  • Husky & lint-staged for Git hooks to ensure code quality
  • Commitlint & Commitizen for conventional commit messages
  • Semantic Release for automated versioning and changelogs
  • Jest for unit testing with coverage
  • GitHub Actions for CI/CD

📜 Available Commands

Polecenie Opis
yarn build Bundle your code to ES Module and CommonJS with tsup
yarn cli Run the custom CLI in bin/cli.ts
yarn commit Use commitizen for conventional commits
yarn dev Start development mode with tsx
yarn dx Update your project with the latest @kamdz/dx
yarn format Format code with Prettier
yarn lint Lint and auto-fix issues with ESLint
yarn start Run the project with tsx
yarn test Run tests with Jest with coverage
yarn type-check Type-check your project using TypeScript

🤔 Why?

While monorepos with shared configs (ESLint, Prettier, TypeScript) are helpful, they still involve setting up boilerplate files for every project. @kamdz/dx simplifies this by providing a template repository. You can modify rules or tools, and propagate those changes to all your projects with a single command, ensuring a consistent developer experience across them.

🔧 Customization

To create your own @user/dx, fork this repository, modify whatever you need (except for the bin and src directories), and update the name, bugs, repository, author, scripts.dx in package.json. Done!

If you enjoy this project, please ⭐️ it!

About

An opinionated, production-ready boilerplate for TypeScript projects, designed to provide an optimal developer experience (DX). It comes pre-configured with best practices and essential tools for streamlined development, including building, linting, formatting, testing, and CI/CD.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •