awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to troessner/reek

Projects sharing features with Reek

30 open-source projects similar to troessner/reek, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • pycqa/pylintPyCQA avatar

    PyCQA/pylint

    5,685View on GitHub↗

    Pylint is a static code analysis tool for Python that checks source code for errors, coding standard violations, and code smells without executing the program. It parses code into an abstract syntax tree and walks the tree to detect issues, enforces configurable style rules and naming conventions, and identifies duplicate code blocks by comparing tokenised source sequences. The tool also includes an inference engine that deduces variable types by simulating code paths, enabling deeper analysis even in untyped code. What distinguishes Pylint is its plugin-based checker architecture, which allo

    Python
    View on GitHub↗5,685
  • pylint-dev/pylintpylint-dev avatar

    pylint-dev/pylint

    5,685View on GitHub↗

    Pylint is a static code analyzer for Python that scans source code for errors, coding standard violations, code smells, and type-related issues without executing the program. It functions as a plugin-based linter framework, allowing users to extend its analysis capabilities with custom or third-party checks for project-specific rules and framework support. The tool also includes a duplicate code detector that identifies identical or near-identical code blocks across a project to help reduce redundancy. Beyond its core linting functionality, Pylint can generate UML class and package diagrams f

    Pythonclosembercode-qualityhacktoberfest
    View on GitHub↗5,685
  • pycqa/flake8PyCQA avatar

    PyCQA/flake8

    3,760View on GitHub↗

    Flake8 is a Python style checker and static analysis tool that identifies programmatic errors and violations of coding standards in source files. It serves as a linting wrapper that aggregates multiple checkers into a single interface, functioning as a pluggable framework for Python code analysis. The tool incorporates a cyclomatic complexity analyzer to measure the logical complexity of functions and identify code that requires refactoring. It is designed for extensibility, allowing the integration of custom plugins and rules through defined entry points. The system provides capabilities fo

    Pythoncomplexity-analysisflake8linter
    View on GitHub↗3,760

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • phan/phanphan avatar

    phan/phan

    5,617View on GitHub↗

    Phan is a static analyzer and type checker for PHP that identifies bugs and type incompatibilities without executing the code. It serves as a quality gate for continuous integration pipelines and a tool for verifying type safety, specifically checking union types, generics, and array shapes. The project is distinguished by its use of a background daemon and Language Server Protocol implementation, which provide real-time diagnostics and navigation within editors. It also features a baseline-based suppression system that allows developers to record existing errors in a snapshot file to focus e

    PHP
    View on GitHub↗5,617
  • detekt/detektdetekt avatar

    detekt/detekt

    6,977View on GitHub↗

    Detekt is a static analysis tool, code quality linter, and complexity analyzer for Kotlin source code. It functions as a code smell detector and static scanner designed to identify potential bugs, design flaws, and violations of coding standards without executing the program. The tool differentiates itself through the use of issue baselining, which allows users to create a snapshot of existing legacy code issues to filter out old violations and focus on preventing new regressions. It further supports extensibility via a plugin-based system that allows for the integration of custom rule sets a

    Kotlin
    View on GitHub↗6,977
  • wordpress/wordpress-coding-standardsWordPress avatar

    WordPress/WordPress-Coding-Standards

    2,757View on GitHub↗

    WordPress Coding Standards is a collection of rules for the PHP CodeSniffer engine designed to enforce consistent coding conventions and best practices within PHP projects. It functions as a specialized static analysis tool that scans source code to identify style violations, security vulnerabilities, and potential bugs before execution. By integrating into development workflows, it ensures that code adheres to official project conventions, maintaining readability and consistency across large-scale plugin and theme development. The project distinguishes itself through deep domain-specific val

    PHPcoding-conventionsphp-codesnifferphpcs
    View on GitHub↗2,757
  • myriad-dreamin/tinymistMyriad-Dreamin avatar

    Myriad-Dreamin/tinymist

    2,907View on GitHub↗

    Tinymist is a comprehensive suite of tools for Typst document authoring, serving as a language server, document compiler, and project manager. It provides a standardized language service via the Language Server Protocol to enable editor features such as autocompletion, navigation, and semantic highlighting. The project distinguishes itself by integrating a TCP-based live preview server for real-time visual rendering and an advanced static analysis tool that utilizes abstract syntax trees and bidirectional type checking. It also includes a project management system capable of handling multi-fi

    Rustdapdap-serverformatter
    View on GitHub↗2,907
  • rrrene/credorrrene avatar

    rrrene/credo

    5,193View on GitHub↗

    Credo is a static analysis tool and linter for Elixir. It functions as a code quality analyzer that scans source code to identify stylistic inconsistencies, common mistakes, and potential security vulnerabilities. The tool provides a customizable framework for defining and testing specialized rules to enforce project-specific coding standards. It identifies complex code fragments and duplication to highlight opportunities for refactoring and simplification. Its capabilities cover automated code reviews, the enforcement of Elixir coding standards, and real-time developer feedback through edit

    Elixir
    View on GitHub↗5,193
  • uber-go/nilawayuber-go avatar

    uber-go/nilaway

    3,765View on GitHub↗

    Nilaway is a static analysis tool and linter plugin for Go designed to identify potential nil pointer dereferences in source code to prevent runtime panics. It functions as an inter-procedural pointer analyzer that tracks data flow across functions and packages to detect memory safety issues. The tool differentiates itself by tracking pointer states through anonymous functions, closures, and struct initializations. It employs a pointer analysis framework that monitors how values flow through a program to determine if a variable is safe to dereference at a specific point. The analyzer can be

    Gogonil-pointernilability
    View on GitHub↗3,765
  • uber/nullawayuber avatar

    uber/NullAway

    4,064View on GitHub↗

    NullAway is a Java static analysis tool and build-time detector designed to identify null pointer risks. It functions as a nullability checker that uses annotations to verify that references are not null before they are dereferenced, preventing runtime crashes. The analyzer implements the JSpecify standard to ensure consistent nullability annotations across different Java libraries. It distinguishes itself through the use of a service provider interface to model the nullability behavior of third-party libraries that lack source annotations and by providing specialized support for Lombok-gener

    Javaandroidjavanullability
    View on GitHub↗4,064
  • checkstyle/checkstylecheckstyle avatar

    checkstyle/checkstyle

    8,867View on GitHub↗

    Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement

    Javacode-qualitycommand-line-toolhacktoberfest
    View on GitHub↗8,867
  • pmd/pmdpmd avatar

    pmd/pmd

    5,425View on GitHub↗

    PMD is a multi-language static code analyzer used to identify programming flaws, unused variables, and dead code without executing the program. It functions as a code smell detector and coding standard enforcer, ensuring source code adheres to specific naming conventions, structural requirements, and project style guides. The project features an XPath-based rule engine that allows users to define custom analysis patterns using queries against an abstract syntax tree. It also includes a copy-paste detector to identify duplicated code blocks across multiple files and a visual rule designer for

    Javaapexcode-analysiscode-quality
    View on GitHub↗5,425
  • vuejs/eslint-plugin-vuevuejs avatar

    vuejs/eslint-plugin-vue

    4,594View on GitHub↗

    This project is an ESLint plugin and static code analyzer for Vue.js. It provides a suite of linting rules to detect common errors, validate templates and scripts, and enforce consistent coding standards across single-file components. The plugin distinguishes itself by analyzing the relationship between script and template blocks to validate cross-block property usage. It identifies bug-prone patterns, detects deprecated APIs, and restricts dangerous patterns such as raw HTML rendering to prevent security vulnerabilities. Its broader capabilities cover component validation for naming and str

    TypeScripteslinteslint-pluginhtml
    View on GitHub↗4,594
  • bbatsov/rubocopbbatsov avatar

    bbatsov/rubocop

    12,879View on GitHub↗

    RuboCop is a static code analyzer and linter for Ruby. It functions as a static analysis tool designed to detect potential bugs, identify style violations, and improve overall code quality in Ruby projects. The project provides an automated code formatter that rewrites source code to align with established community standards. It also implements a language server protocol to surface linting and formatting errors directly within text editors. Its capabilities cover automated code linting and the analysis of Ruby code style to ensure consistency across a project. These functions are driven by

    Ruby
    View on GitHub↗12,879
  • rectorphp/rectorrectorphp avatar

    rectorphp/rector

    10,199View on GitHub↗

    Rector is an automated PHP refactoring and modernization tool designed to upgrade language versions and modernize syntax using predefined rules. It functions as a static analysis engine that inspects code structures and types to identify refactoring targets without executing the code. The project provides a framework for defining custom transformation logic to automate project-specific changes. It distinguishes itself by offering specialized capabilities for migrating legacy or custom frameworks to modern alternatives and converting docblock annotations into native language attributes. The s

    PHPastautomated-upgradesinstant-upgrades
    View on GitHub↗10,199
  • mgechev/revivemgechev avatar

    mgechev/revive

    5,524View on GitHub↗

    Revive is a configurable static analysis linter and code quality tool for Go. It analyzes source code to detect common coding mistakes, identify style violations, and enforce language standards without executing the program. The project functions as both a command line tool and an embeddable analysis engine. This allows the core linting logic to be integrated as a library into other Go applications for programmatic code inspection. The tool supports custom rule sets and severity levels managed through a structured configuration file. It provides capabilities for suppressing specific warnings

    Gogogolanggolint
    View on GitHub↗5,524
  • luals/lua-language-serverLuaLS avatar

    LuaLS/lua-language-server

    4,298View on GitHub↗

    lua-language-server is a static analysis tool and type checker for the Lua language that implements the Language Server Protocol. It provides a system for detecting type mismatches, unused code, and logic errors in source files. The project features an inference-based type system that deduces variable types and supports optional annotations and meta files to enforce type safety. It allows for the definition of custom types and function signatures, including support for overloads and member visibility controls. The server provides a broad set of IDE capabilities, including real-time code auto

    Luahacktoberfestlanguage-serverlpeg
    View on GitHub↗4,298
  • shashankss1205/codegraphcontextShashankss1205 avatar

    Shashankss1205/CodeGraphContext

    3,748View on GitHub↗

    CodeGraphContext is a code graph indexer and visualization tool that analyzes source code to build graphs of functions, classes, and inheritance relationships. It functions as a Model Context Protocol server, providing a structured codebase index to AI assistants for context retrieval and natural language querying. The project features an interactive web interface that uses force-directed layouts to visualize code dependencies and symbols. To accelerate the setup of large projects, it supports the import of pre-calculated knowledge bundles for popular repositories. The system provides capabi

    Python
    View on GitHub↗3,748
  • danger/danger-jsdanger avatar

    danger/danger-js

    5,480View on GitHub↗

    danger-js is an automated code review tool and CI pipeline plugin that functions as a pull request linter. It verifies commit messages, tracks dependency changes, and ensures pull requests meet project standards by posting automated feedback and comments directly into the version control interface. The system integrates with various Git providers, including GitHub, GitLab, and BitBucket, to retrieve pull request metadata and execute custom review rules. It allows teams to package and distribute review conventions as shareable modules and supports the execution of rules written in transpiled l

    TypeScriptcicirclecode-review
    View on GitHub↗5,480
  • chai2010/go-ast-bookchai2010 avatar

    chai2010/go-ast-book

    5,510View on GitHub↗

    go-ast-book is a collection of educational and technical resources focused on abstract syntax tree analysis, compiler development, and static code verification. It provides guides and manuals for parsing, traversing, and analyzing Go source code to extract semantic meaning. The project serves as a reference for building compiler frontends, covering the translation of high-level code into intermediate representations and single static assignment forms. It also provides instructions for using these techniques to develop language tooling and perform static code analysis. The resources cover a b

    Go
    View on GitHub↗5,510
  • microsoft/vs-threadingmicrosoft avatar

    microsoft/vs-threading

    1,036View on GitHub↗

    Vs-threading is a cross-platform .NET concurrency library and utility set for C# designed to manage multithreaded workflows, coordinate concurrent tasks, and prevent deadlocks. It supplies specialized non-blocking semaphores, events, and locks alongside asynchronous counterparts for lazy initialization, event handlers, and local storage. The library provides awaitable extension methods on tasks to shift execution threads, apply timeouts, and propagate cancellation tokens. It includes mechanisms to stall the main user interface thread synchronously while waiting for background tasks to finish

    C#analyzerasyncdotnet
    View on GitHub↗1,036
  • microsoft/applicationinspectormicrosoft avatar

    microsoft/ApplicationInspector

    4,391View on GitHub↗

    ApplicationInspector is a multi-language static analysis tool designed to detect specific features and characteristics within source code. It utilizes a declarative JSON rules engine to identify patterns and structural tags across project directories without requiring the analyzer to be recompiled. The system distinguishes itself through a code version differ that compares two different source paths to report changes in detected features. It also provides utilities for creating and validating custom JSON-based rules, including a validation pipeline to verify syntax and identifier uniqueness.

    C#
    View on GitHub↗4,391
  • jshint/jshintjshint avatar

    jshint/jshint

    9,064View on GitHub↗

    JSHint is a JavaScript static analysis tool and linter designed to detect errors and enforce coding standards. It functions as a syntax validator that scans source code to identify potential logic problems and programming mistakes before the code is executed. The tool provides a command line interface for analyzing files and directories. It supports the export of analysis results into standardized formats such as Checkstyle for integration with external build tools. Analysis is managed through a system of linting rule management and environment global configuration. This includes the ability

    JavaScript
    View on GitHub↗9,064
  • squizlabs/php_codesniffersquizlabs avatar

    squizlabs/PHP_CodeSniffer

    10,771View on GitHub↗

    PHP_CodeSniffer is a static analysis tool, coding standard linter, and command-line validator for PHP. It scans files and directories to detect and report formatting errors and language-specific coding violations without executing the code. The project functions as an automated code formatter capable of correcting detected style and formatting violations to bring source code into compliance with defined standards. It uses token-based lexical analysis to match code patterns against rule sets, ensuring consistency across a codebase. The tool provides comprehensive capabilities for recursive fi

    PHPautomationclicoding-standards
    View on GitHub↗10,771
  • nikic/php-parsernikic avatar

    nikic/PHP-Parser

    17,437View on GitHub↗

    PHP-Parser is a tool that converts PHP source code into an abstract syntax tree for static analysis and programmatic manipulation. It functions as a parser, a code generator, and a static analysis framework. The project enables the programmatic construction of abstract syntax tree nodes through a fluent interface and provides the ability to transform these trees back into formatted source code. It includes a serializer that exports abstract syntax trees to JSON format and reconstructs them from strings. The toolset covers several capability areas, including namespace resolution, constant exp

    PHP
    View on GitHub↗17,437
  • ycm-core/youcompletemeycm-core avatar

    ycm-core/YouCompleteMe

    25,904View on GitHub↗

    YouCompleteMe is a completion engine and semantic code analyzer for the Vim editor. It provides an integrated suite of development tools, including a Language Server Protocol client and a semantic analyzer that utilizes Clang to offer context-aware symbols and type-based highlighting. The project distinguishes itself through specialized semantic completion for C-family languages and JavaScript, offering identifiers, snippets, and automatic imports. It provides advanced visual feedback such as inlay hints for type information and parameter names, as well as semantic highlighting based on the a

    Pythoncode-analysiscode-completionsemantic-engine
    View on GitHub↗25,904
  • kotlin/kotlin-lspKotlin avatar

    Kotlin/kotlin-lsp

    2,930View on GitHub↗

    kotlin-lsp is a language server implementation that integrates editors with the Kotlin compiler and build tools to provide language intelligence and code analysis. It uses the Language Server Protocol to decouple heavy language processing from the text editor user interface. The project provides static code analysis to detect issues and provide real-time diagnostics. It enables source code navigation through symbol-index based jumping to definitions and an analysis of how components interact. Additional capabilities include automated source code formatting, intelligent code completion, and s

    Kotlin
    View on GitHub↗2,930
  • oclint/oclintoclint avatar

    oclint/oclint

    3,881View on GitHub↗

    Oclint is a static analysis engine and extensible linting framework designed for C, C++, and Objective-C source code. It functions as a code quality tool that identifies bugs, code smells, and structural complexities by parsing source code into abstract syntax trees to perform semantic inspection. The project is distinguished by its modular architecture, which supports dynamic plugin loading for custom inspection rules and a pluggable reporter system for exporting analysis findings in multiple formats. It replicates build configurations by reading compiler flags and include paths to ensure th

    C++
    View on GitHub↗3,881
  • dominikh/go-toolsdominikh avatar

    dominikh/go-tools

    6,818View on GitHub↗

    go-tools is a collection of utilities for Go static analysis and memory layout optimization. It provides a toolset designed to analyze source code to detect bugs and dead code, alongside specialized tools for optimizing how structs are arranged in memory. The project includes a memory alignment visualizer to display physical memory layouts and padding, as well as a struct layout optimizer that reorders fields to minimize memory padding. Additionally, it provides a boilerplate generator to automate the creation of registration and test files required for developing custom Go analyzers. The to

    Go
    View on GitHub↗6,818
  • nicklockwood/swiftformatnicklockwood avatar

    nicklockwood/SwiftFormat

    8,835View on GitHub↗

    SwiftFormat is a tool for the Swift language that functions as a code formatter, linter, and refactoring utility. It automatically applies consistent style rules and visual formatting to source files to ensure a uniform appearance across a project. The project differentiates itself by providing both a command-line interface for batch processing and an Xcode extension for integration directly into the development environment. It includes specialized capabilities for modernizing legacy API usage, simplifying language constructs, and inferring formatting options by analyzing an existing codebase

    Swift
    View on GitHub↗8,835