A DevToys extension that formats code in 34 languages with live auto-formatting. Supports Python, JavaScript, TypeScript, JSON, Markdown, TOML, CSS, SCSS, Less, HTML, Vue, Svelte, Astro, YAML, GraphQL, Dockerfile, Java, SQL, C, C++, C#, Go, Go Assembly, Shell/Bash, Lua, R, Delphi/Pascal, Kotlin, Perl, PHP, MATLAB, Ruby, Objective-C, and Haskell. All formatters bundled as native binaries - no external dependencies required.
$ dotnet add package CodeFormatter.DevToysA code formatting extension for DevToys 2.0 that supports 34 programming languages with automatic live formatting.
| Language | Formatter | Notes |
|---|---|---|
| Python | Ruff | Bundled binary |
| JavaScript | dprint | Bundled binary |
| TypeScript | dprint | Bundled binary |
| JSON | dprint | Bundled binary |
| Markdown | dprint | Bundled binary |
| TOML | dprint | Bundled binary |
| CSS | dprint | Bundled binary |
| SCSS | dprint | Bundled binary |
| Less | dprint | Bundled binary |
| HTML | dprint | Bundled binary |
| Vue | dprint | Bundled binary |
| Svelte | dprint | Bundled binary |
| Astro | dprint | Bundled binary |
| YAML | dprint | Bundled binary |
| GraphQL | dprint | Bundled binary |
| Dockerfile | dprint | Bundled binary |
| Java | google-java-format | Native GraalVM binary |
| SQL | sqruff | Native Rust binary |
| C | clang-format | Bundled binary |
| C++ | clang-format | Bundled binary |
| C# | CSharpier | Bundled binary |
| Go | gofumpt | Bundled binary |
| Go Assembly | asmfmt | Bundled binary |
| Shell/Bash | shfmt | Bundled binary |
| Lua | StyLua | Bundled binary |
| R | air | Bundled binary |
| Delphi/Pascal | pasfmt | Bundled binary |
| Kotlin | ktlint | Bundled binary |
| Perl | Perl::Tidy | Bundled binary |
| PHP | PHP-CS-Fixer | Bundled binary |
| MATLAB | MH Style | Bundled binary |
| Ruby | Rufo | Bundled binary |
| Objective-C | Uncrustify | Bundled binary |
| Haskell | Ormolu | Bundled binary |
.nupkg file from Releases.nupkg.nupkg (it's a ZIP file) to:
%LocalAppData%\DevToys\Plugins\CodeFormatter.DevToys.1.0.0\Click the gear icon to open settings for any language. Available options vary by formatter:
Settings are saved to ~/.config/code-formatter/config.toml (or equivalent on your OS).
# Clone the repository
git clone https://github.com/Error0229/cs-f.git
cd cs-f
# Download formatter binaries (from GitHub Release)
curl -L -o formatter-binaries.zip "https://github.com/Error0229/cs-f/releases/download/binaries-v1/formatter-binaries.zip"
unzip formatter-binaries.zip -d Binaries
# Build
dotnet build -c Release
# Run tests
dotnet test
# Create NuGet package
dotnet pack -c Release -o ./nupkg
For development with hot reload:
Set environment variables:
[Environment]::SetEnvironmentVariable("DevToysGuiDebugEntryPoint", "C:\path\to\DevToys.exe", "User")
Press F5 in Visual Studio/VS Code/Rider to debug with DevToys
The Properties/launchSettings.json is configured for debugging with the EXTRAPLUGIN environment variable.
cs-f/
├── CodeFormatterTool.cs # Main UI and tool implementation
├── Models/
│ ├── Language.cs # Language enum and extensions
│ ├── FormatterConfig.cs # Configuration model
│ └── FormatterSettings.cs # Per-language setting definitions
├── Services/
│ ├── FormatterService.cs # Formatting orchestration
│ ├── ConfigManager.cs # TOML config read/write
│ └── ProcessRunner.cs # External process execution
├── Resources/
│ └── CodeFormatterStrings.resx # Localized strings
├── Binaries/ # Bundled formatter executables (19 binaries)
│ ├── ruff.exe # Python
│ ├── dprint.exe # JS/TS/JSON/Markdown/TOML/CSS/HTML/Vue/Svelte/Astro/YAML/GraphQL/Dockerfile
│ ├── clang-format.exe # C/C++
│ ├── gofumpt.exe # Go
│ ├── shfmt.exe # Shell/Bash
│ ├── google-java-format.exe # Java
│ ├── sqruff.exe # SQL
│ ├── csharpier.exe # C#
│ ├── stylua.exe # Lua
│ ├── air.exe # R
│ ├── pasfmt.exe # Delphi/Pascal
│ ├── ktlint.exe # Kotlin
│ ├── perltidy.exe # Perl
│ ├── php-cs-fixer.exe # PHP
│ ├── mh_style.exe # MATLAB
│ ├── rufo.exe # Ruby
│ ├── asmfmt.exe # Go Assembly
│ ├── uncrustify.exe # Objective-C
│ └── ormolu.exe # Haskell
└── CodeFormatter.Tests/ # Integration tests
MIT