For an opinionated code formatter that supports many languages, the strongest matches are prettier/prettier (Prettier is the quintessential opinionated code formatter with minimal), dprint/dprint (dprint is a multi-language code formatter with a pluggable) and nicklockwood/swiftformat (SwiftFormat is an opinionated code formatter for Swift with). beautify-web/js-beautify and prettier/prettier-vscode round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Automated tools that enforce consistent coding styles across multiple programming languages within your development workflow.
Prettier is an opinionated code formatter that parses source code and reprints it from scratch to enforce a consistent, project-wide visual style. By transforming code into an abstract syntax tree and applying a recursive document printing process, it eliminates manual style debates and ensures that all source files adhere to a unified appearance. The project is distinguished by its extensible, plugin-based architecture, which decouples language-specific parsing logic from the core engine. This modular design allows for uniform style enforcement across diverse programming languages and comple
Prettier is the quintessential opinionated code formatter with minimal configuration, supporting dozens of languages through its plugin architecture and offering CLI, API, and editor integrations for consistent formatting across projects.
dprint is a multi-language code formatter that applies consistent styling across various programming languages using a pluggable architecture. It functions as a unified project style management tool, a command-line interface for continuous integration style enforcement, and a Language Server Protocol implementation for real-time formatting in editors. The project is distinguished by a WebAssembly-based plugin system that loads sandboxed formatting logic from URLs or file paths. It further extends its capabilities through a process-based tool integration that wraps external command-line interf
dprint is a multi-language code formatter with a pluggable architecture, CLI, and LSP integration, providing consistent, opinionated formatting across many languages with minimal configuration — exactly what this search requires.
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
SwiftFormat is an opinionated code formatter for Swift with a CLI and Xcode extension, fitting the category well, but it only supports a single language rather than the multi-language support this search targets.
js-beautify is a web language beautifier and code formatter designed to standardize the layout and structure of JavaScript, HTML, and CSS files. It reorganizes source code into a consistent, readable style by applying configurable indentation and spacing rules. The project includes a utility for unpacking minified scripts, which transforms compressed or obfuscated JavaScript into a human-readable format. It provides a command-line interface for executing bulk code reformatting across multiple files. The tool supports customizable formatting rules and language-specific overrides, which can be
js-beautify is a code formatter for JavaScript, HTML, and CSS with a CLI and editor integration, but its scope is limited to web languages, not the broad multi-language support this search requires.
This is a Visual Studio Code extension that integrates the Prettier formatting engine into the editor. It serves as a bridge to provide opinionated, multi-language code styling by reprinting source code from a syntax tree to enforce consistent layout and line wrapping. The extension enables automated formatting upon saving or on command, ensuring a uniform codebase across teams. It resolves styling rules by merging editor preferences, EditorConfig files, and local configuration files, and can coordinate with linters to resolve conflicting stylistic rules. The system supports a wide range of
This is a Visual Studio Code extension that integrates the Prettier formatting engine into the editor, so it delivers opinionated multi-language formatting but only as an editor plugin rather than a standalone tool with its own CLI and programmatic API.
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
RuboCop is a Ruby-specific code formatter and linter with opinionated defaults, but it does not support multiple programming languages as this search requires.
coc.nvim is a Node.js extension host and Language Server Protocol client that transforms Vim and Neovim into a full integrated development environment. It provides a framework for executing JavaScript and TypeScript plugins within a separate process to enable advanced IDE features without blocking the editor's main thread. The project is distinguished by its ability to host extensions and language servers through a centralized JSON configuration. It supports the installation and lifecycle management of third-party extensions from registries or local files, allowing users to customize language
coc.nvim is a Node.js extension host and LSP client for Vim/Neovim that can invoke language servers (including formatters), but it is not itself an opinionated multi-language code formatter with minimal configuration—its purpose is to integrate IDE features into the editor, not to be a formatting tool.
Highlight.js is a syntax highlighting library that automatically detects and applies color-coded styling to source code blocks within web pages. It functions as a language-agnostic formatting engine, utilizing a modular processor that applies consistent visual themes to diverse programming languages based on their specific grammatical rules. By decoupling the core parsing logic from language-specific definitions, the library provides a unified execution environment that operates without requiring internal knowledge of the target language. The project is distinguished by its modular architectu
Highlight.js is a syntax highlighting library for web pages, not a code formatter — it colors code but does not enforce formatting rules or provide CLI/API for consistent output style, making it a neighboring tool rather than the formatter you're looking for.
This project is a static analysis engine designed to identify patterns, enforce coding standards, and automate code quality improvements in software projects. By parsing source code into structured abstract syntax trees, it enables deep programmatic inspection and the automated remediation of identified programming issues. The engine functions as a pluggable linting framework, allowing developers to extend its core capabilities through a modular architecture. Users can inject custom rules, parsers, and processors to support non-standard file formats or domain-specific logic. This extensibilit
ESLint is a pluggable linting framework primarily for JavaScript, not an opinionated code formatter that supports many languages with minimal configuration—its auto-fix features are secondary and language-specific, so it does not fit the search for a dedicated multi-language formatter.
Theia is a modular framework designed for building professional-grade development environments that function as both local desktop applications and remote browser-based services. It provides a comprehensive toolkit for constructing specialized coding tools, allowing developers to assemble custom interfaces and backend logic through a flexible, contribution-based architecture. The platform distinguishes itself through a highly extensible workbench that supports the integration of existing third-party editor plugins and standard language servers. By utilizing a dependency injection container an
Theia is a framework for building desktop or cloud IDEs, not a code formatter itself—it can integrate formatters through extensions but does not deliver the opinionated, multi-language formatting tool this search asks for.
Zed is an AI-native, high-performance code editor designed for extreme responsiveness and keyboard-centric workflows. It functions as an extensible text processing workspace that integrates autonomous agents and predictive models directly into the development environment to automate complex engineering tasks, refactoring, and code generation. The editor distinguishes itself through a GPU-accelerated rendering pipeline and an asynchronous multi-threaded architecture that ensures low-latency interaction even with large-scale projects. It features built-in support for real-time, multi-user colla
Zed is a code editor, not a standalone code formatter; while it can format code, the visitor is looking for a dedicated, opinionated formatter like Prettier or rustfmt, not an editor.
Universal Ctags is a multi-language symbol indexer and regex-based parsing engine used to extract and catalog functions, classes, and variables from source code. It functions as a source code indexer that scans files across diverse programming languages to create searchable catalogs of definitions and declarations. The project is distinguished by its extensible parser framework, which allows users to define new language rules using regular expressions and configuration files. It supports complex parsing scenarios through state-based parsing, stack-oriented scope tracking, and guest-parser del
Universal Ctags is a multi-language symbol indexer and source code parser, not a code formatter — it extracts definitions and declarations to enable code navigation, but it does not reformat source code according to any opinionated style.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| prettier/prettier | 52.1K | JavaScript | MIT | |
| dprint/dprint | 3.8K | Rust | mit | |
| nicklockwood/swiftformat | 8.8K | Swift | MIT | |
| beautify-web/js-beautify | 9K | JavaScript | MIT | |
| prettier/prettier-vscode | 5.5K | TypeScript | MIT | |
| bbatsov/rubocop | 12.9K | Ruby | MIT | |
| neoclide/coc.nvim | 25.2K | TypeScript | NOASSERTION | |
| highlightjs/highlight.js | 24.8K | JavaScript | bsd-3-clause | |
| eslint/eslint | 27.3K | JavaScript | MIT | |
| eclipse-theia/theia | 21.6K | TypeScript | EPL-2.0 |