30 open-source projects similar to ktlint/ktlint, 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.
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
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
Karma is a JavaScript test runner designed for executing test suites across multiple real web browsers to ensure cross-browser compatibility. It functions as a browser-based execution system that launches browsers, captures console output, and provides a command line interface for running automated tests within continuous integration pipelines. The project utilizes a plugin architecture that allows for the integration of third-party launchers, reporters, and preprocessors. It employs an adapter-based framework to execute tests from various assertion libraries through a unified runner interfac
eSearch is a desktop tool that combines screen capture, image annotation, screen recording, optical character recognition (OCR), and text search and translation into a single application. It is built around a modular architecture that coordinates these tasks through an event-driven capture pipeline, allowing users to capture screen regions, annotate them with drawing and shape tools, and then extract text using a local-first OCR engine or optional cloud services. The project distinguishes itself by integrating a command-line interface for triggering capture and recognition tasks, enabling scr
Stylelint is a static code analysis tool and linter for CSS and style-like languages. It identifies errors, enforces coding conventions, and operates as a PostCSS plugin to validate stylesheets during build pipelines. The project distinguishes itself through support for non-standard syntaxes, including preprocessor parsing for SCSS and Less, and the ability to extract and lint embedded styles from JavaScript, HTML, and template literals. It features an automated fixing system that programmatically corrects repairable styling violations to ensure consistency. The system provides a plugin arch
This project is a JVM testing framework that provides a foundation for defining and running automated tests using a pluggable engine architecture. It functions as a JVM test orchestrator and a modular test engine API, allowing multiple testing engines to be grouped and executed as a single coordinated unit. The framework includes a platform launcher for discovering and executing test suites from build systems, integrated development environments, or the command line. It enables the creation of custom testing frameworks through a standardized interface that integrates into a shared execution p
The Haskell Language Server is an implementation of the Language Server Protocol that provides real-time diagnostics, code navigation, and refactoring support for Haskell projects. It functions as a backend service that enables advanced editing capabilities within standard text editors by facilitating communication between the development environment and the Haskell compiler. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of independent components for specific language features. It leverages the host compiler as a library to perfo
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
This application is a desktop utility for managing, editing, and visualizing local database files. It provides a graphical interface for executing SQL queries, designing database structures, and performing routine maintenance tasks on data stores. The software distinguishes itself through its support for encrypted database files, allowing users to manage password-protected data using modular cryptographic extensions. It also offers built-in tools for data analysis, enabling the generation of graphical charts and plots directly from query results to identify trends within datasets. Beyond its
SumatraPDF is a lightweight, multi-format document viewer designed for rendering PDF, eBook, and comic book files within a unified interface. It functions as both a graphical reading environment and a command-line document processor, enabling users to automate file conversion, merging, and extraction tasks without requiring a graphical interface. The application distinguishes itself through a single-executable binary distribution that utilizes direct-to-GDI rendering and memory-mapped file access to maintain high performance and minimal memory overhead. Users can personalize their workspace b
Albert is a keyboard launcher that opens files, applications, and runs commands by typing search queries into a search bar. It functions as a keyboard-driven workflow tool, enabling users to navigate their file system, launch installed applications, and execute shell commands without touching a mouse. The launcher processes user input through a plugin-based modular architecture, where functionality is extended by dynamically loaded C++ and Python plugins. Queries are dispatched to all enabled handlers in parallel, with results merged and ranked by a combination of match quality and historical
xo is a zero-config linting tool and ESLint wrapper that provides opinionated default rules for JavaScript and TypeScript. It functions as a static analysis tool to enforce code style and readability standards immediately upon installation without requiring manual configuration. The tool distinguishes itself by providing a zero-config development workflow that eliminates the need for complex configuration files. It supports incremental codebase cleanup by allowing users to ignore known violations through a suppressions file, facilitating the gradual adoption of strict rules in existing projec
CKEditor 4 is a browser-based WYSIWYG rich text editor that enables users to create and format HTML content directly in the browser. It operates on a plugin-based architecture with a configurable toolbar system, DOM-based content editing, and an event-driven lifecycle, all delivered through a CDN-based distribution model. The editor supports skin-based theming and includes a legacy plugin compatibility layer for backward compatibility. The editor distinguishes itself as a cross-platform framework that integrates natively with Angular, React, Vue, Electron, Android, and iOS environments. It of
rustfmt is a tool that automatically rewrites Rust source code to adhere to a consistent and standardized style guide. It functions as both a code formatter for transforming source files and a style linter used to verify if code matches required formatting rules. The system is configurable, allowing for the definition of custom formatting rules and language editions through configuration files to override default styles. It also supports selective formatting by using dedicated skip markers to prevent specific blocks of code from being modified. The tool provides capabilities for both source
syn is a Rust syntax tree parser and token stream converter. It serves as a toolkit for procedural macro development, providing a framework to parse Rust source code into structured syntax trees for analysis and transformation. The project enables the manipulation of Rust abstract syntax trees through specialized visitor and folder patterns for traversing and mutating nodes. It provides a bidirectional mapping that allows developers to convert token streams into structured trees and print those trees back into tokens for code generation. The library covers a broad range of syntax analysis ca
Chunjun is a distributed data integration framework and SQL-based ETL pipeline designed to synchronize data between heterogeneous sources. It functions as a change data capture tool and a heterogeneous data synchronizer, utilizing a distributed processing environment to move and transform data across different database types. The system is distinguished by its plugin-based connector architecture, which allows for the development of custom source and sink plugins to extend connectivity to unsupported data systems. It supports real-time change data capture from relational database logs and impl
GLPI is an open-source IT asset management platform and helpdesk ticketing system. It provides a centralized engine for handling incidents and service requests with structured workflows, SLA tracking, and service catalog integration, while also managing the full lifecycle of IT assets including hardware, software, and inventory tracking. The platform distinguishes itself through agentless network discovery that scans networks and collects inventory data from devices without requiring installed agents, and a plugin-based modular architecture that extends core functionality through a community-
Domoticz is a home automation platform and multi-protocol IoT orchestrator designed for controlling smart home devices and automating routines. It functions as an event-driven automation engine and a centralized system for managing connected sensors and hardware across Linux, Windows, and Raspberry Pi. The system acts as a Zigbee and Z-Wave controller and an MQTT IoT gateway, bridging disparate hardware ecosystems through a flexible plugin system. This allows for the unification of various communication standards into a single management interface. The platform covers broad capabilities incl
Walker is a centralized search interface and application launcher designed to find and start installed software, system tools, and local files. It functions as a single entry point for executing desktop applications, running shell commands, and managing system scripts. The project uses a provider-based plugin architecture to extend its capabilities via independent modules. It allows for deep visual and behavioral customization through CSS styling, XML-defined layout templates, and layered configuration overrides. The system includes integrated productivity tooling for mathematical calculatio
Lexical is a modular rich text editor framework used to build extensible web-based editors. It functions as a state-driven content editor that maintains a serializable, immutable snapshot of document content to ensure predictable updates and accessibility compliance. The framework is distinguished by its plugin-based architecture and customizable node framework, which allow developers to extend editor behavior through specialized content nodes and encapsulated runtime logic. It also includes a collaborative editing engine capable of synchronizing document state across multiple clients in real
Guard is a command-line file watcher that monitors the filesystem from the terminal and automatically executes user-defined tasks when files are modified, added, or deleted. It functions as a file change watcher and test runner that triggers test suite execution immediately when source or spec files are saved, providing instant feedback during development. The tool is configured through a Ruby-based domain-specific language in a Guardfile, and it can send visual desktop notifications when watched file actions complete or fail. The project distinguishes itself through a plugin-based extension
BTCPay Server is a non-custodial payment gateway and invoice manager designed for accepting Bitcoin and other cryptocurrencies directly into a private wallet. It serves as a self-hosted payment infrastructure that allows merchants to manage digital invoicing and storefronts without relying on third-party intermediaries. The system distinguishes itself through a non-custodial wallet architecture that ensures private keys remain on the user's own hardware or server. It integrates the Lightning Network for instant, low-cost transactions and provides a hardware-wallet signing bridge to secure tra
LiteMonitor is a customizable desktop system dashboard and hardware performance monitor. It provides a visual overlay for tracking real-time CPU, GPU, memory, and network metrics, including temperature and power consumption. The application is an extensible system monitor that uses a modular plugin system to integrate third-party data sources, such as weather, stocks, and cryptocurrency, alongside core hardware telemetry. The tool includes a theme engine for adjusting colors, fonts, and layout, as well as window management controls for transparency and click-through behavior. It supports sys
LogicFlow is an SVG-based flowchart editing framework and visual graph editor used for building customizable business process diagrams. It serves as a customizable diagramming engine for rendering business process models, entity relationship diagrams, and unified modeling language charts. The system is characterized by a plugin-based architecture that allows developers to define specialized graphical elements and register pluggable modules. A distinctive feature is its overlay system, which positions standard HTML components on top of the SVG canvas to create interactive menus and control pan
Luckysheet upgraded to Univer
Xboard is a containerized service orchestrator and management platform. It provides a Docker-based administrative dashboard for monitoring and controlling backend system services and configurations through a unified interface for operators and users. The platform utilizes a modular architecture and a dedicated plugin system, allowing for the registration of custom logic and the extension of core administrative functionality. It includes utilities for legacy data migration to transfer records and configurations from previous versions or alternative implementations into the current system sche
Cerebro is a cross-platform productivity tool and keyboard-driven command palette. It serves as a central search interface and desktop application launcher for finding and initiating the execution of local files, installed software, and web services. The application is an extensible search tool that supports a plugin system, allowing third-party modules to register custom search providers and new functional capabilities. The software covers several capability areas, including local file system navigation and preview, integrated web search, and productivity utilities for natural language mat
InkyPi is a digital signage management system designed to schedule and display rotating content and dynamic data across network-connected screens. It functions as a networked display controller and external data integration engine, allowing for the fetching and rendering of third-party plugins, calendars, and news feeds. The system includes a hardware display driver manager that installs and configures model-specific drivers for various electronic paper display controllers. It utilizes a web-based interface for remote configuration, enabling the management of display settings and content upda