Open-source formatter software
211 open-source libraries, tools and applications tagged formatter, ranked by how closely formatter is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
211 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| Scalafmt Scalafmt is a code formatter for Scala that enforces consistent style across a codebase. It is configurable via a .scalafmt.conf HOCON file… | 95 | 1490 | stable |
| slevomat/coding-standard A collection of PHP_CodeSniffer sniffs for PHP covering functional safety, dead code detection, and code formatting rules. Many sniffs supp… | 94 | 1480 | active |
| dominikh/go-mode.el go-mode is an Emacs major mode for editing Go source code, a complete rewrite of the mode originally shipped with Go. It provides syntax hi… | 66 | 1456 | stable |
| mhartington/formatter.nvim A format runner plugin for Neovim written in Lua that executes external formatters asynchronously on buffers. It provides opt-in default fo… | 39 | 1449 | active |
| antfu/case-police CasePolice is a CLI tool and ESLint plugin that checks and fixes the casing of well-known product and technology names (e.g., GitHub, TypeS… | 72 | 1426 | active |
| kamadorueda/alejandra Alejandra is a fast, opinionated code formatter for the Nix expression language, written in Rust. It enforces a comprehensive style guide d… | 89 | 1414 | stable |
| standard/semistandard semistandard is a JavaScript code style linter that wraps ESLint with the rules of standard/standard plus semicolons. It runs as a CLI or n… | 23 | 1410 | active |
| quarylabs/sqruff sqruff is a fast SQL linter and formatter written in Rust, inspired by SQLFluff and ruff, supporting many SQL dialects like Postgres, BigQu… | 93 | 1404 | active |
| kristoff-it/superhtml SuperHTML is a CLI tool and language server written in Zig that validates, autoformats, and provides LSP features for HTML5 documents. It i… | 83 | 1392 | active |
| Xavalon/XamlStyler XAML Styler is a Visual Studio extension that formats XAML source code according to configurable styling rules. It helps individuals and te… | 61 | 1381 | active |
| IanVS/prettier-plugin-sort-imports A Prettier plugin that sorts import declarations according to a configurable regular-expression-based order while preserving side-effect im… | 67 | 1372 | active |
| fannheyward/coc-pyright A coc.nvim extension that wraps Microsoft's Pyright static type checker and language server for Python, adding editor features like semanti… | 76 | 1364 | active |
| avh4/elm-format elm-format is a command-line tool that automatically formats Elm source code according to a standard set of rules based on the official Elm… | 31 | 1334 | stable |
| Kotlin/ktfmt ktfmt is a program that pretty-prints (formats) Kotlin source code according to the common community standard for Kotlin code conventions, … | 94 | 1332 | active |
| marcoroth/herb Herb is an HTML-aware ERB toolchain built around a fast C parser that produces detailed syntax trees for HTML+ERB templates. It ships devel… | 92 | 1330 | active |
| rust-lang/rust-mode rust-mode is an Emacs major mode providing syntax highlighting, indentation, and integration with Cargo, clippy, and rustfmt for editing Ru… | 62 | 1269 | active |
| simonhaenisch/prettier-plugin-organize-imports A Prettier plugin that organizes import statements (sorting, combining, and removing unused ones) using the TypeScript language service API… | 45 | 1239 | active |
| fables-tales/rubyfmt rubyfmt is a fast, opinionated autoformatter for Ruby source code, written in Rust. It runs as a CLI tool and integrates with editors like … | 88 | 1234 | active |
| weavejester/cljfmt cljfmt is a tool for detecting and fixing formatting errors in Clojure code, with defaults based on the Clojure Style Guide and extensive c… | 97 | 1228 | active |
| Input Mask An Android library written in Kotlin that applies pattern-based masks to user input in text fields, guiding users to enter correctly format… | 23 | 1220 | stable |
| jhipster/prettier-java A Prettier plugin that adds opinionated code formatting support for the Java language. It parses Java source code and reprints it with cons… | 99 | 1217 | active |
| DanielGavin/ols ols is a language server (LSP implementation) for the Odin programming language, providing completions, hover, go-to-definition, references… | 95 | 1207 | active |
| nbQA-dev/nbQA nbQA is a command-line tool that lets you run standard Python code quality tools like ruff, black, isort, mypy, pylint, flake8, and pyupgra… | 64 | 1205 | active |
| bazel-contrib/buildtools A collection of developer tools for working with Bazel build files, including buildifier for formatting BUILD files, buildozer for command-… | 98 | 1195 | active |
| tombi-toml/tombi Tombi is a fast TOML toolkit written in Rust providing a formatter, linter, and Language Server (LSP). It supports schema-driven validation… | 86 | 1163 | active |
| sibprogrammer/xq xq is a command-line XML and HTML beautifier and content extractor written in Go. It formats and syntax-highlights markup, supports XPath a… | 86 | 1156 | active |
| ergebnis/composer-normalize A Composer plugin that normalizes and consistently formats composer.json files. It can also be used as a standalone PHAR via Phive for proj… | 94 | 1127 | active |
| FlamingTempura/bibtex-tidy A tool that cleans and formats BibTeX bibliography files, available as a CLI, JavaScript/TypeScript API, browser app, Docker image, and pre… | 76 | 1127 | active |
| google/vim-codefmt A Vim plugin by Google that provides syntax-aware code formatting inside the editor, with built-in support for many external formatters lik… | 32 | 1118 | active |
| jdorn/sql-formatter A lightweight PHP class that formats SQL statements with automatic indentation, line breaks, and HTML syntax highlighting. It also provides… | 23 | 3842 | maintenance |
| intellij-solidity/intellij-solidity A Solidity language plugin for IntelliJ-based IDEs providing syntax highlighting, code completion, navigation, formatting, and file templat… | 82 | 1100 | active |
| dkorunic/betteralign betteralign is a Go static analysis tool that detects structs whose fields could be reordered to reduce memory usage, and can optionally re… | 98 | 1087 | active |
| tweag/ormolu Ormolu is a formatter for Haskell source code that uses GHC's own parser and enforces a single, unconfigurable formatting style with minima… | 84 | 1073 | active |
| cheshirekow/cmake_format cmake_format is a source code formatter for CMake listfiles, written in Python. It parses CMake files and reformats them with consistent la… | 23 | 1071 | active |
| treefmt treefmt is a CLI tool that unifies running multiple code formatters across a polyglot repository with a single command. It runs formatters … | 91 | 1068 | active |
| cmhughes/latexindent.pl latexindent.pl is a Perl script that beautifies, tidies, and indents LaTeX source files by adding leading horizontal space to code blocks. … | 94 | 1065 | active |
| uber-go/gopatch gopatch is a command-line tool for matching and transforming Go source code using patch files that understand Go syntax. It operates like t… | 23 | 1040 | active |
| benawad/destiny A CLI tool that restructures JavaScript/TypeScript codebases into a fractal folder layout by analyzing the import graph, moving files, and … | 23 | 3511 | maintenance |
| haskell/stylish-haskell stylish-haskell is a Haskell code prettifier that cleans up common formatting annoyances like import statements, LANGUAGE pragmas, and reco… | 57 | 1027 | active |
| zhlint-project/zhlint zhlint is a linting tool for Chinese text content, available as a CLI, a Node.js package, and a standalone browser script. It validates and… | 59 | 1014 | active |
| CSScomb CSScomb is a coding style formatter for CSS, available as a CLI tool and Node.js library. Its main feature is sorting CSS properties in a c… | 23 | 3332 | maintenance |
| travisjeffery/ClangFormat-Xcode An Xcode plug-in that integrates clang-format so developers can format C/Objective-C/C++ code inside Xcode using styles like LLVM, Google, … | 32 | 2872 | maintenance |
| qfish/XAlign XAlign is an Xcode Source Editor extension that aligns code using customizable regular-expression-based alignment patterns. It supports ali… | 23 | 2841 | maintenance |
| Python Language Server An implementation of the Language Server Protocol (LSP) for Python, built on Jedi for completions, definitions, hover, references, and symb… | 60 | 2700 | maintenance |
| davidmerfield/Typeset Typeset is an HTML pre-processor for web typography that applies fine-printing features like hanging punctuation, optical margin alignment,… | 27 | 2680 | maintenance |
| victorporof/Sublime-HTMLPrettify A Sublime Text 2/3 plugin that formats HTML, CSS, JavaScript, JSON, React/JSX and Vue code using js-beautify via Node.js. It integrates wit… | 23 | 1945 | maintenance |
| dotnet/format dotnet/format is the home of the dotnet-format command, a code formatter for .NET projects that applies style and formatting rules to C# an… | 66 | 1941 | maintenance |
| prettydiff/prettydiff Pretty Diff is a language-aware code beautifier and comparison tool written in TypeScript that supports many languages including HTML, Java… | 23 | 1769 | maintenance |
| rdio/jsfmt jsfmt is a command-line tool and Node.js library for formatting, searching, and rewriting JavaScript, analogous to Go's gofmt. It operates … | 23 | 1680 | maintenance |
| Glavin001/atom-beautify Atom-Beautify is a universal code beautification package for the Atom editor that formats HTML, CSS, JavaScript, Python, Ruby, C++, and man… | 59 | 1499 | maintenance |
| heybourn/headwind Headwind is an opinionated Tailwind CSS class sorter for Visual Studio Code that enforces consistent class ordering by parsing code and rep… | 32 | 1425 | maintenance |
| jdavisclark/JsFormat JsFormat is a Sublime Text 2/3 plugin that formats JavaScript and JSON files or selections using jsbeautifier. It supports customizable for… | 32 | 1418 | maintenance |
| felixge/node-dateformat A Node.js package implementing Steven Levithan's dateFormat() function for formatting dates with customizable mask patterns. It supports na… | 88 | 1291 | maintenance |
| benoitsan/BBUncrustifyPlugin-Xcode An Xcode plugin that formats source code using Uncrustify or ClangFormat directly from the Xcode editor. It adds menu commands to format th… | 23 | 1184 | maintenance |
| square/spacecommander Space Commander is a set of shell scripts and clang-format rules that enforce a unified Objective-C code style across a team via git pre-co… | 48 | 1121 | maintenance |
| hashivim/vim-terraform A Vim plugin providing Terraform integration, including a :Terraform command with tab completion, syntax highlighting for HCL/Terraform fil… | 39 | 1106 | maintenance |
| leostera/caramel Caramel is a functional programming language that compiles OCaml-style source code to run on the Erlang VM (BEAM), combining OCaml's type s… | 10 | 1106 | maintenance |
| rhysd/vim-clang-format A Vim plugin that integrates the clang-format tool for formatting C, C++, Objective-C, Java, JavaScript, TypeScript, Protobuf, CUDA, and Va… | 32 | 1099 | maintenance |
| bradfitz/goimports goimports is a Go command-line tool that automatically fixes import lines by adding missing imports and removing unreferenced ones, while a… | 32 | 1039 | maintenance |
| TaoK/PoorMansTSqlFormatter A small free .NET and JavaScript library for reformatting and colorizing T-SQL code according to user preferences. It ships with multiple i… | 23 | 1021 | maintenance |
| rohitdhas/shittier Shittier is a satirical code formatting CLI that intentionally makes code look as messy and unreadable as possible, the opposite of Prettie… | 30 | 1802 | experimental |
| PHP_CodeSniffer PHP_CodeSniffer is a pair of PHP CLI scripts (phpcs and phpcbf) that tokenize PHP, JavaScript, and CSS files to detect violations of define… | 23 | 10773 | abandoned |
| JSCS JSCS is a JavaScript code style checker that lints and can auto-fix code against configurable style guides, with built-in presets like Airb… | 10 | 4927 | abandoned |
| square/java-code-styles IntelliJ IDEA code style settings for Square's Java and Android projects, installed via a shell script. It is deprecated in favor of ktfmt … | 10 | 2941 | abandoned |
| twitter-archive/recess RECESS is a CSS code quality tool built on top of LESS, developed at Twitter to enforce styleguide rules. It can lint CSS/LESS files for st… | 10 | 2164 | abandoned |
| msaktype/stylefmt stylefmt is a CLI tool that automatically formats CSS and CSS-like stylesheets (including SCSS) according to stylelint rules, powered by Po… | 10 | 2080 | abandoned |
| Jintin/Swimat Swimat is an Xcode source editor plug-in that formats Swift code, built as a hand-written character scanner. It is now archived and unmaint… | 10 | 1629 | abandoned |
| joefitzgerald/go-plus go-plus is an Atom editor package that provides an enhanced Go development experience with autocomplete, formatting, linting, build, test, … | 10 | 1491 | abandoned |
| vercel/style-guide Vercel's shared engineering style guide packaged as @vercel/style-guide, providing composable ESLint, Prettier, and TypeScript configs. The… | 10 | 1305 | abandoned |
| dotnet/codeformatter CodeFormatter is a command-line tool that uses Roslyn to automatically rewrite C# source code to follow the .NET team's coding style rules.… | 10 | 1220 | abandoned |
| segmentio/golines golines is a Go code formatter that shortens long lines in addition to standard gofmt fixes. The original segmentio repository was archived… | 10 | 1125 | abandoned |
| begriffs/css-ratiocinator A command-line tool that automatically refactors CSS by examining a site's live DOM in a headless browser and reverse-engineering a clean n… | 32 | 1025 | abandoned |
| paulolramos/eslint-prettier-airbnb-react A shell script that sets up ESLint, Prettier, and the Airbnb style guide configuration for React projects, generating .eslintrc and .pretti… | 10 | 1008 | abandoned |
| Elixir Elixir is a dynamic, functional programming language built on the Erlang VM (BEAM), designed for building scalable and maintainable applica… | 97 | 26688 | stable |
| gleam-lang/gleam Gleam is a statically‑typed functional programming language that compiles to BEAM bytecode. It includes a compiler, build tool, formatter a… | 99 | 21991 | active |
| pre-commit pre-commit is a framework for managing and maintaining multi-language Git pre-commit hooks. It automatically installs and runs hooks writte… | 88 | 15593 | stable |
| AstroNvim AstroNvim is a feature-rich, aesthetically pleasing Neovim configuration framework written in Lua that balances out-of-the-box functionalit… | 90 | 14456 | active |
| bufbuild/buf Buf is a modern CLI toolchain for Protocol Buffers that replaces protoc with a fast compiler plus linting, formatting, breaking-change dete… | 97 | 11477 | active |
| jaredpalmer/tsdx TSDX is a zero-config CLI for developing, testing, and publishing TypeScript packages, with templates for basic and React libraries. Versio… | 54 | 11458 | active |
| super-linter/super-linter Super-linter is a containerized collection of curated linters and code analyzers for many programming languages, runnable as a GitHub Actio… | 88 | 10608 | active |
| mason.nvim mason.nvim is a Neovim plugin providing a portable package manager for installing and managing external editor tooling such as LSP servers,… | 80 | 10485 | active |
| remarkjs/remark remark is a plugin-powered markdown processor built on the unified ecosystem that parses markdown into an AST (mdast) and transforms it. It… | 66 | 9008 | stable |
| prek prek is a fast Git hook manager written in Rust that runs hooks on your code before commits, on demand, or in CI, managing the tools and de… | 86 | 8644 | active |
| Jsonnet Jsonnet is a data templating configuration language that extends JSON with functions, variables, object-orientation, and imports to elimina… | 63 | 7581 | stable |
| Vite+ Vite+ (the `vp` CLI) is a unified web development toolchain that bundles Vite, Vitest, Rolldown, Oxlint, Oxfmt, and Vite Task into one zero… | 84 | 6393 | active |
| AidLux (AidLearning) AidLux (originally AidLearning) is an AIoT development platform that runs a native Ubuntu Linux environment with GUI, deep learning tooling… | 63 | 5812 | active |
| dotnet/roslynator Roslynator is a set of code analysis tools for C# built on the Roslyn compiler platform. It ships as IDE extensions for Visual Studio and V… | 94 | 3485 | active |
| dotnet/vscode-csharp The official C# extension for Visual Studio Code, providing rich language support via a Language Server Protocol server powered by Roslyn a… | 94 | 3072 | active |
| ljlm0402/typescript-express-starter An interactive CLI generator that scaffolds production-ready TypeScript Express REST API projects with a configurable stack. It offers 10+ … | 85 | 2871 | active |
| learnhouse/learnhouse LearnHouse is a next-generation open-source learning management system (LMS) for creating, sharing, and selling educational content. It com… | 100 | 2404 | active |
| clangd clangd is a language server that provides C/C++ IDE features such as code completion, diagnostics, go-to-definition, and refactoring to any… | 88 | 2310 | stable |
| Calva Calva is a Visual Studio Code extension providing a REPL-powered IDE for Clojure and ClojureScript development. It bundles inline evaluatio… | 94 | 2089 | active |
| rafi/vim-config A carefully crafted, ready-to-use Neovim configuration built on LazyVim with fast startup (~30-45ms), LSP, completion, and many editor plug… | 75 | 1975 | active |
| tobe-fe-dalao/fast-vue3 An opinionated Vue 3 starter template combining Vite, TypeScript, Pinia, UnoCSS, ESLint/Prettier, auto-imports, and file-based routing for … | 76 | 1932 | active |
| Intelephense Intelephense is a high-performance PHP language server implementing the Language Server Protocol, distributed primarily as a Visual Studio … | 85 | 1860 | active |
| ivov/lisette Lisette is a small programming language inspired by Rust that compiles to readable Go, featuring Hindley-Milner type inference, algebraic d… | 78 | 1554 | active |
| denoland/vscode_deno The official Visual Studio Code extension for Deno, powered by the Deno language server. It provides type checking, intellisense, linting, … | 97 | 1548 | active |
| ananthakumaran/tide Tide is a TypeScript Interactive Development Environment for Emacs, providing IDE features like completion, eldoc, flycheck diagnostics, an… | 59 | 1474 | active |
| fisadev/fisa-vim-config A personal Vim and NeoVim configuration aimed at Python development, with autocompletion, linting, fuzzy finding, and debugging support. It… | 42 | 1468 | active |
| ecosse3/nvim Ecovim is a fully-featured, non-minimal Neovim configuration written in Lua, tailored for frontend development with TypeScript, React, Next… | 87 | 1410 | active |