Code Quality

Every language has its own build tool, test runner, and formatter. You manage them separately, remember different flags, and teach every new team member the incantation for each project.

8Vast gives you one set of commands that work across languages. No configuration. No plugins. It detects your project type and runs the right tool.

Commands

8v build [--release]           # Build your project
8v test [--filter name] [--release]  # Run tests
8v fmt [--check]               # Format code (--check to verify without writing)
8v lint .                      # Analyze code for issues

These work from any directory that contains a recognized project file.

Language Support

8Vast detects your project type from config files and runs the appropriate tool underneath:

LanguageBuildTestFormatLint
Rustcargo buildcargo testcargo fmtclippy + 8v
TypeScriptnpm run buildnpm testprettiereslint + 8v
Pythonpip installpytestblackruff + 8v
.NETdotnet builddotnet testdotnet format8v

Detection is automatic. If your directory has a Cargo.toml, 8Vast treats it as Rust. package.json means TypeScript/JavaScript. pyproject.toml or setup.py means Python. *.csproj or *.sln means .NET.

No setup required.

How It Works

When you run 8v build, 8Vast:

  1. Scans the current directory for project config files
  2. Identifies the language and build system
  3. Runs the appropriate native tool with the right flags
  4. Reports results in a consistent format

If multiple project types exist in the same directory (e.g., a Rust backend and a TypeScript frontend), 8Vast handles both.

Flags

--release compiles with optimizations. Without it, you get a debug build (faster compilation, slower runtime).

--filter narrows test execution. 8v test --filter auth runs only tests with "auth" in the name.

--check on 8v fmt verifies formatting without modifying files. Useful in CI.

Deep Analysis

8v lint goes beyond your language's built-in linter. 8Vast has 147 code analysis rules that work across languages — covering correctness, performance, security, and style.

For the full rule set, custom rules, and configuration, see Linting.