Tooling

The Starter project uses a small and predictable set of developer tools to enforce code quality, formatting consistency, and reliable development workflows.

These tools operate automatically where possible and require minimal manual configuration.


Package Manager

The project uses pnpm as the package manager.

pnpm provides deterministic dependency resolution and efficient disk usage through a content-addressable store.

The project is configured for pnpm 10.6.2.

Typical development commands are executed using pnpm.

Example:

pnpm install

This command installs all project dependencies defined in package.json.

TypeScript

The project uses TypeScript with strict type checking.

TypeScript helps detect type errors during development before the application is executed.

Type checking can be executed manually.

pnpm tsc

This command verifies the codebase without emitting compiled files.

ESLint

ESLint is used to enforce code quality and detect common programming errors.

Linting rules are defined in the ESLint configuration file located in the project root.

Run the linter manually:

pnpm lint

Linting helps maintain a consistent and predictable codebase.

Prettier

Prettier enforces consistent formatting across the entire codebase.

Formatting rules are defined in the Prettier configuration file.

To automatically format files:

pnpm format

To verify formatting without modifying files:

pnpm format:check

Formatting verification is also used during automated checks.

Husky Git Hooks

The project uses Husky to run automated checks during Git operations.

Git hooks ensure that code quality rules are applied before changes are committed.

Typical commit-time checks include:

  • staged file formatting
  • staged file linting
  • commit message validation

This helps prevent incorrectly formatted, invalid, or unchecked changes from entering the repository.

Commitlint

Commitlint enforces a consistent commit message format.

Commit messages are validated against the Conventional Commits standard.

This ensures that the commit history remains structured and readable.

Commit validation is executed automatically during the commit process.

Project Verification

The repository provides a combined verification command.

pnpm check

This command runs:

  • TypeScript type checking
  • ESLint static analysis
  • Prettier formatting verification

The command is typically executed before pushing changes or preparing a release.

Continuous Integration

The repository includes a CI workflow configuration:

.github/workflows/ci.yml

Continuous integration automatically runs verification checks when changes are pushed to the repository.

The current CI workflow performs the following stages:

  • dependency installation
  • combined repository checks
  • application build

The combined repository checks cover TypeScript validation, linting, and formatting verification.

Automated CI helps maintain repository stability and prevents regressions.