YAPF is a Python code formatter that automatically rewrites source to match a chosen style, using a clang-format–inspired algorithm to search for the “best” layout under your rules. Instead of relying on a fixed set of heuristics, it explores formatting decisions and chooses the lowest-cost result, aiming to produce code a human would write when following a style guide. You can run it as a command-line tool or call it as a library via FormatCode / FormatFile, making it easy to embed in editors, CI, and custom tooling. Styles are highly configurable: start from presets like pep8, google, yapf, or facebook, then override dozens of options in .style.yapf, setup.cfg, or pyproject.toml. It supports recursive directory formatting, line-range formatting, and diff-only output so you can check or fix just the lines you touched.

Features

  • Performance helpers: Recursive formatting, --parallel for multiple files, and in-place edits with -i.
  • Configurable styles: Use pep8, google, yapf, or facebook as a base and override fine-grained knobs in config files or --style flags.
  • CLI and library APIs: Run from the terminal or call FormatCode / FormatFile programmatically.
  • Partial / selective formatting: Reformat specific line ranges (--lines) or only changed hunks via yapf-diff.
  • Editor & CI friendly: Editor plugins available; --diff and return codes enable easy CI enforcement.
  • Ignore support: Exclude paths with .yapfignore or [tool.yapfignore] in pyproject.toml.

Project Samples

Project Activity

See All Activity >

Categories

Algorithms

License

Apache License V2.0

Follow YAPF

YAPF Web Site

Other Useful Business Software
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of YAPF!

Additional Project Details

Programming Language

Python

Related Categories

Python Algorithms

Registered

2025-10-09