Skip to content

Other tools

List of other tools used in the project.

It's my personal opinion to use every tool available that can help standardize the codebase and improve code quality.

While it may seem a bit daunting at first, (many tools, strict rules) this is aimed at reducing developers cognitive load.

Once the tools are setup, the developer can focus on writing code and let the tools handle the rest: formatting, default styles and linting.

No more fighting about code style.

pre-commit

Add hooks to the git repository to run linters, formatters, nx commands and other scripts before every phase.

syncpack

keep package.jsons in sync across multiple projects and organized.

commitlint

ensure commits are following the conventional commit format. Attached to pre-commit hook.

cz-git

provide an easy to use CLI interface to create conventional commits.

Linters / formatters

java

ts

  • prettier
  • eslint
  • biome (experimental, hopefully can replace eslint + prettier in 2025)

css/scss

html

note: vscode extension and browser microsoft-edge have builtin functionalities to provide additional lints and suggestions for accessibility

vitepress

serve with pnpm docs:dev

pnpm

pnpm is used to speed up the installation of the dependencies and save time in CI.

the file {root}/pnpm-workspace.yaml is used to define the packages.

TIP

while pnpm workspaces is not required for nx to work, it's needed by some tools like changesets which depend on it to provide intellisense when adding packages

Released under the MIT License. Created with vitepress.