30 open-source projects similar to peripheryapp/periphery, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Periphery alternative.
Vulture is a static analysis tool and linter designed to find unused variables, functions, and classes in Python source code. It operates as a dead code detector and unused code finder that scans source files to identify unreachable expressions and imports without executing the code. The tool employs a confidence-based heuristic scoring system to assign probability values to detections, helping to distinguish truly unused symbols from potential false positives. It further assists in pruning dead logic by sorting detected unused classes and functions by line count to prioritize the removal of
Typos is a source code spell checker and automated typo fixer designed to detect and correct spelling errors across programming languages and project files. It functions as a CI spelling validator and SARIF compatible linter, allowing projects to prevent misspelled text from reaching production. The tool features a customizable dictionary engine that utilizes TOML configuration and locale-specific dictionaries to manage project-specific terminology. It differentiates itself by splitting programming language identifiers into individual words for validation and verifying the spelling of filenam
Task is a YAML-based task runner and build tool used to define and automate development workflows. It functions as a dependency-based build system and cross-platform task automator, allowing users to execute shell commands across different operating systems using a declarative configuration file. The project operates as an incremental build tool, utilizing file fingerprints and checksums to track state and avoid redundant work by determining if tasks are up to date. It manages execution via a dependency graph to ensure prerequisites are completed before target commands run. The system includ
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
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
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
Zizmor is a security linter and static analysis tool designed to audit GitHub Actions workflow files. It functions as a CI/CD security scanner that identifies security vulnerabilities, misconfigurations, and software supply chain risks within automation pipelines. The project distinguishes itself by providing an automated workflow remediator that applies security fixes to identified vulnerabilities. It also implements a language server for integration with code editors and supports a variety of analysis personas to scale the sensitivity and volume of reported findings. The tool covers a broa
Alex is an inclusive language linter and content auditor designed to detect and flag insensitive, inconsiderate, or gendered phrasing. It serves as a profanity detection tool that identifies offensive words based on configurable certainty ratings to ensure professional and neutral content. The tool distinguishes itself through diff-aware analysis, allowing it to function as a continuous integration validator. By analyzing pull request deltas, it can flag new insensitive phrasing while ignoring existing legacy issues to prevent old warnings from blocking new merges. The project supports multi
Sourcery is a code generation tool for Swift that automates the production of repetitive boilerplate and protocol conformance. It functions as a template engine that scans source files to generate structural code, such as Codable, Equatable, and Hashable implementations, based on marker protocols and static analysis. The project provides a specialized mocking framework that creates mock objects for protocols to track function calls and capture arguments during testing. It also includes utilities for generating struct lenses, enum case collections, and precise property-level test diffs. The s
TSLint is an extensible static analysis tool that checks TypeScript source files against a configurable set of lint rules. It scans code by walking the parsed TypeScript abstract syntax tree, applying rule objects to detect readability, maintainability, and functionality errors. The tool supports rule severity configuration, inline suppression through comment directives, and automatic attachment of fix objects for correcting violations. The project provides a framework for developing custom lint rules and formatters, allowing teams to enforce project-specific coding conventions beyond the bui
Dalfox is an automated web application security tool specifically designed for discovering and verifying cross-site scripting vulnerabilities. It functions as an XSS vulnerability scanner that analyzes HTTP parameters and DOM structures to identify reflected, stored, and blind injection points. The project distinguishes itself by providing a Model Context Protocol server and a REST API, allowing artificial intelligence agents and remote interfaces to trigger and manage security scans programmatically. It utilizes a payload mutation engine and fingerprinting strategies to execute WAF evasion t
swift-format is a set of developer utilities for the Swift ecosystem designed for automated style enforcement, static analysis, and project-wide configuration management. It functions as a code formatter that rewrites source code to adhere to consistent style rules and as a linter that identifies style violations. The tool provides a system for defining and applying custom formatting rules through a configuration tool. This includes the ability to load settings from configuration files discovered in a directory hierarchy or to export default settings for user customization. Its capabilities
Chronos is an LLM software engineering agent and repository-scale debugging model designed for autonomous bug fixing. The system functions as an automated bug fixing system that localizes defects, reasons through root causes, and implements validated multi-file patches. The project is distinguished by a graph-guided retrieval engine that uses a persistent memory graph to navigate call relationships and dataflows across large repositories. It employs a persistent debugging workflow that indexes a history of commits and logs to recognize patterns and avoid repeating previous mistakes across ite
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
j2objc is a source-to-source compiler and transpiler that converts Java source code into Objective-C. It functions as a cross-platform logic porter, allowing application logic and data models written in Java to be shared and executed on iOS. To support this translation, the project provides an Objective-C implementation of core Java classes and APIs to emulate the Java runtime environment. The system includes specialized translation for Java libraries and provides mapping for dependency injection and static analysis annotations to preserve metadata. It also enables the conversion of JUnit tes
pyupgrade is a static code modernizer and syntax upgrader for Python. It automatically rewrites source code to implement modern language features and syntax based on a specified target version. The tool focuses on removing technical debt by deleting deprecated imports, compatibility shims, and obsolete version-specific conditional blocks. It also refactors type annotations to use current standards, such as simplified generic aliases and union operators. Its capability surface includes updating standard library usage, optimizing built-in function calls, and converting verbose collection const
Reek is a static code analyzer for Ruby projects designed to identify design flaws and maintainability issues known as code smells. It functions as a quality assurance tool that inspects source code without executing it to find structural weaknesses and architectural debt. The analyzer identifies specific patterns such as large classes, long methods, and uncommunicative naming. It also detects more complex design issues, including feature envy, data clumps, simulated polymorphism, and control coupling. The tool includes capabilities for issue baselining to manage legacy code and configuratio
Larastan is a static analysis tool for PHP and a specialized extension for PHPStan. It serves as a code analyzer designed to detect bugs and architectural issues within Laravel applications by analyzing source code without executing it. The project provides framework-specific rule sets and specialized type-inference to handle the unique patterns and logic used in the Laravel ecosystem. This allows for more accurate error detection and type checking than generic analysis tools. The tool includes systems for managing legacy code debt through error baseline tracking and regex-based error suppre
Dokka is an extensible documentation engine designed to generate structured API reference materials for Kotlin projects. By parsing source code and comments, it functions as a static site generator that transforms codebases into readable documentation. It integrates directly into development workflows as a build system plugin, allowing for the automated creation of reference materials during the standard compilation process. The project distinguishes itself through a modular, plugin-driven processing pipeline that allows developers to modify the generation workflow, customize output formats,
Spotless is a multi-language formatting orchestrator and Gradle plugin that automates code styling across various programming languages within a single build pipeline. It functions as a coordinator for multiple third-party formatters, a code style linting tool, and a system for inserting and updating standardized license headers. The project distinguishes itself through git-integrated style enforcement, using pre-push hooks and git references to apply formatting only to modified files or lines. It supports shared build configurations, allowing formatting rules to be distributed and loaded acr
LiteX is an FPGA SoC development suite and SoC builder framework used to programmatically design system-on-chips. It provides a hardware description toolchain that uses a scriptable framework to define hardware layouts and automate the generation of hardware description language code. The project distinguishes itself by orchestrating multiple vendor and open-source toolchains to synthesize digital logic and generate deployable bitstreams. It supports multi-language logic integration, allowing disparate hardware description languages to be combined into a single project. The framework covers
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
Efficient reliable UDP unicast, UDP multicast, and IPC message transport - .NET port of Aeron
🎯 A .NET library, developed by humans, for running a target dependency graph.
Burp-Automator: A Burp Suite Automation Tool with Slack Integration. It can be used with Jenkins and Selenium to automate Dynamic Application Security Testing (DAST).
A Python library (and CLI) for Amazon order history, line items, and transactions
Google ProtocolBuffers for Apple Swift
Take a code screenshot using freeze by https://charm.sh/