Project Types¶
Overview¶
Project types define how datamitsu detects different kinds of projects in your repository. Each type has marker files or patterns that datamitsu uses for automatic detection.
This configuration includes 9 project types.
Project Types Reference¶
| Project Type | Description | Marker Files |
|---|---|---|
| golang-package | Go module | **/go.mod |
| npm-package | Node.js/npm project | **/package.json |
| pnpm-package | pnpm project | pnpm-lock.yaml |
| pre-commit-project | Project using pre-commit framework | .pre-commit-config.yaml |
| python-package | Python project | **/pyproject.toml |
| terraform-project | Terraform infrastructure | **/*.tf |
| turbo-package | turbo project | turbo.json |
| typescript-project | TypeScript project | **/tsconfig.json |
| typst-project | Typst document | **/*.typ |
How Project Type Detection Works¶
When you run dm init or dm check, datamitsu:
- Scans your repository for marker files matching the patterns above
- Automatically detects which project types are present
- Enables the appropriate tools for each detected project type
For example, if your repository contains package.json files, datamitsu will:
- Detect it as an
npm-packageproject type - Enable tools like
eslint,prettier,oxlint, andsort-package-json