Skip to content

Releases: O6lvl4/codopsy

v1.2.0 - Almide Support

10 Mar 07:01

Choose a tag to compare

What's New

  • Almide language support — 25th language added via tree-sitter-almide grammar
  • Almide-specific AST handling: function_name node, test_declaration, for_in_expression, do_expression
  • Keyword logical operators (and/or) recognized for cognitive complexity scoring

Full language list: TypeScript, TSX, JavaScript, Rust, Go, Python, C, C++, Java, Ruby, C#, PHP, Scala, Haskell, Bash, HTML, CSS, JSON, OCaml, Swift, Lua, Zig, Elixir, YAML, Almide

codopsy v1.1.0

10 Mar 06:04

Choose a tag to compare

What's New

Added 5 new languages:

  • Swift (.swift)
  • Lua (.lua)
  • Zig (.zig)
  • Elixir (.ex, .exs)
  • YAML (.yml, .yaml)

Total: 24 languages supported.

Note: Kotlin and Dart are not yet supported due to tree-sitter grammar ABI incompatibility. Will be added when their crates are updated.

Install / Update

cargo install --git https://github.com/O6lvl4/codopsy.git

codopsy v1.0.0

10 Mar 05:58

Choose a tag to compare

codopsy v1.0.0

AST-level code quality analyzer for 19 languages.

Supported Languages

TypeScript, TSX, JavaScript, Rust, Go, Python, C, C++, Java, Ruby, C#, PHP, Scala, Haskell, Bash, HTML, CSS, JSON, OCaml

Features

  • Cyclomatic & cognitive complexity analysis per function
  • Language-specific lint rules — JS/TS: 11 rules, Rust: 6 rules
  • Threshold rules for all languages (max-lines, max-depth, max-params, max-complexity)
  • A–F quality scoring (complexity 35% + issues 40% + structure 25%)
  • Baseline tracking for quality degradation detection
  • Hotspot detection — complexity × git churn
  • Parallel analysis via rayon
  • Configurable via .codopsyrc.json

Install

cargo install --git https://github.com/O6lvl4/codopsy.git

Quick Start

codopsy analyze ./src          # Analyze a project
codopsy analyze ./src -v       # Verbose per-file output
codopsy analyze ./src --hotspots  # Show complexity hotspots
codopsy init                   # Generate .codopsyrc.json