Apps¶
Overview¶
Apps are the actual applications managed by datamitsu. Unlike Tools which are configurations, Apps are the binaries and packages that get installed and executed.
This configuration manages 82 apps across multiple runtimes (binary, node, python).
Apps by Category¶
- Build Tools (7 apps): buf, openapi-generator, protoc, etc.
- Documentation & Spelling (8 apps): cspell, lychee, markdown-link-check, etc.
- Git Hooks (3 apps): commitlint, lefthook, pre-commit
- Linters & Formatters (19 apps): checkmake, dotenv-linter, editorconfig-checker, etc.
- Security Scanners (12 apps): bearer, checkov, detect-secrets, etc.
- Utilities (33 apps): actionlint, age, air, etc.
Apps Reference¶
| App | Runtime | Info | Description |
|---|---|---|---|
| actionlint | binary | Info | :octocat: Static checker for GitHub Actions workflow files |
| age | binary | Info | A simple, modern and secure encryption tool (and Go library) with small explicit keys, no config options, and UNIX-style composability. |
| air | binary | Info | ☁️ Live reload for Go apps |
| allurectl | binary | Info | Allure TestOps Command line tool |
| ast-grep | binary | Info | ⚡A CLI tool for code structural search, lint and rewriting. Written in Rust |
| bandit | python | Info | Security oriented static analyser for python code. |
| bearer | binary | Info | Code security scanning tool (SAST) to discover, filter and prioritize security and privacy risks. |
| buf | binary | Info | The best way of working with Protocol Buffers. |
| casey | binary | Info | 🤖 Just a command runner |
| checkmake | binary | Info | Linter/analyzer for Makefiles |
| checkov | python | Info | Infrastructure as code static analysis |
| commitlint | node | Info | Lint your commit messages |
| conftest | binary | Info | Write tests against structured configuration data using the Open Policy Agent Rego query language |
| conventional-changelog | node | Info | Generate a markdown changelog from git commit data |
| cosign | binary | Info | Code signing and transparency for containers and binaries |
| crane | binary | Info | Go library and CLIs for working with container registries |
| cspell | node | Info | A Spelling Checker for Code! |
| dasel | binary | Info | Select, put and delete data from JSON, TOML, YAML, XML, INI, HCL and CSV files with a single tool. Also available as a go mod. |
| detect-secrets | python | Info | Tool for detecting secrets in the codebase |
| dotenv-linter | binary | Info | ⚡️Lightning-fast linter for .env files. Written in Rust 🦀 |
| editorconfig-checker | binary | Info | A tool to verify that your files are in harmony with your .editorconfig |
| eslint | node | Info | An AST-based pattern checker for JavaScript. |
| fx | binary | Info | Terminal JSON viewer & processor |
| gcrane | binary | Info | Go library and CLIs for working with container registries |
| git-cliff | binary | Info | A highly customizable Changelog Generator that follows Conventional Commit specifications ⛰️ |
| gitleaks | binary | Info | Find secrets with Gitleaks 🔑 |
| golang-migrate | binary | Info | Database migrations. CLI and Golang library. |
| golangci-lint | binary | Info | Fast linters runner for Go |
| goose | binary | Info | A database migration tool. Supports SQL migrations and Go functions. |
| grype | binary | Info | A vulnerability scanner for container images and filesystems |
| hadolint | binary | Info | Dockerfile linter, validate inline bash, written in Haskell |
| jq | binary | Info | Command-line JSON processor |
| knip | node | Info | Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects |
| ktlint | jvm | Info | An anti-bikeshedding Kotlin linter with built-in formatter |
| kube-linter | binary | Info | KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices. |
| lefthook | binary | Info | Fast and powerful Git hooks manager for any type of projects. |
| lychee | binary | Info | ⚡ Fast, async, stream-based link checker written in Rust. Finds broken URLs and mail addresses inside Markdown, HTML, reStructuredText, websites and more! |
| markdown-link-check | node | Info | checks the all of the hyperlinks in a markdown text to determine if they are alive or dead |
| markdownlint-cli2 | node | Info | A fast, flexible, configuration-based command-line interface for linting Markdown/CommonMark files with the markdownlint library |
| mmdc | node | Info | Command-line interface for mermaid |
| openapi-generator | jvm | Info | OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3) |
| osv-scanner | binary | Info | Vulnerability scanner written in Go which uses the data provided by https://osv.dev |
| oxipng | binary | Info | Multithreaded PNG optimizer written in Rust |
| oxlint | node | Info | Linter for the JavaScript Oxidation Compiler |
| pnpm | node | Info | Fast, disk space efficient package manager |
| pre-commit | python | Info | A framework for managing and maintaining multi-language pre-commit hooks. |
| prettier | node | Info | Prettier is an opinionated code formatter |
| protoc | binary | Info | Protocol Buffers - Google's data interchange format |
| protolint | binary | Info | A pluggable linter and fixer to enforce Protocol Buffer style and conventions. |
| quicktype | node | Info | Generate types and converters from JSON, Schema, and GraphQL |
| ruff | binary | Info | An extremely fast Python linter and code formatter, written in Rust. |
| scorecard | binary | Info | OpenSSF Scorecard - Security health metrics for Open Source |
| semgrep | python | Info | Lightweight static analysis for many languages. Find bug variants with patterns that look like source code. |
| shellcheck | binary | Info | ShellCheck, a static analysis tool for shell scripts |
| shfmt | binary | Info | A shell parser, formatter, and interpreter with bash and zsh support; includes shfmt |
| slidev | node | Info | Presentation slides for developers |
| snyk | binary | Info | Snyk CLI scans and monitors your projects for security vulnerabilities. |
| sops | binary | Info | Simple and flexible tool for managing secrets |
| sort-package-json | node | Info | Sort an Object or package.json based on the well-known package.json keys |
| spectral | node | Info | A flexible JSON/YAML linter for creating automated style guides, with baked in support for OpenAPI (v3.1, v3.0, and v2.0), Arazzo v1.0, as well as AsyncAPI v2.x. |
| sqlc | binary | Info | Generate type-safe code from SQL |
| sqlfluff | python | Info | The SQL Linter for Humans |
| swag | binary | Info | Automatically generate RESTful API documentation with Swagger 2.0 for Go. |
| syft | binary | Info | CLI tool and library for generating a Software Bill of Materials from container images and filesystems |
| syncpack | node | Info | Consistent dependency versions in large JavaScript Monorepos |
| task | binary | Info | A fast, cross-platform build tool inspired by Make, designed for modern workflows. |
| tflint | binary | Info | A Pluggable Terraform Linter |
| tombi | binary | Info | TOML Formatter / Linter / Language Server |
| trivy | binary | Info | Find vulnerabilities, misconfigurations, secrets, SBOM in containers, Kubernetes, code repositories, clouds and more |
| trufflehog | binary | Info | Find, verify, and analyze leaked credentials |
| tsc | node | Info | TypeScript is a language for application scale JavaScript development |
| typos | binary | Info | Source code spell checker |
| typst | binary | Info | A markup-based typesetting system that is powerful and easy to learn. |
| typstyle | binary | Info | Beautiful and reliable typst code formatter |
| unfuck-ai-comments | binary | Info | converts all comments inside go functions to lowercase |
| utpm | binary | Info | A package manager for local and remote Typst packages. |
| vacuum | binary | Info | vacuum is the worlds fastest and most versatile OpenAPI linter and toolkit. It tears through API specs at light speed. 100% compatible with Spectral rulesets. |
| vale | binary | Info | |
| xh | binary | Info | Friendly and fast tool for sending HTTP requests |
| yamllint | python | Info | A linter for YAML files. |
| yq | binary | Info | yq is a portable command-line YAML, JSON, XML, CSV, TOML, HCL and properties processor |
| zensical | python | Info | A modern static site generator built by the creators of Material for MkDocs |
How Apps Work¶
When you run dm init, datamitsu:
- Downloads and caches app binaries based on your project types
- Supports multiple runtimes:
- binary — Native executables (Go, Rust compiled tools)
- node — npm packages executed via Node.js
- python — Python packages installed via pip/uv
- Apps are referenced by Tools configurations
When you run dm check, datamitsu executes Tools, which invoke Apps with configured arguments and file globs.