---
title: "all platforms, tools & comparisons - codefmt"
url: https://codefmt.dev/platforms
updated: 2026-10-05
sources:
  - https://codefmt.dev/platforms
licence: "© codefmt. Cite with attribution to https://codefmt.dev."
---

# all platforms, tools & comparisons

codefmt is a free code formatter, beautifier, and linter built for automation platforms. It formats and lints JavaScript and Python for Zapier, n8n, Pipedream, Make, and HubSpot Data Hub code actions (plus TypeScript on n8n and Pipedream), and it formats and lints HubL for HubSpot CMS. This page is the full catalog: every supported platform, the tools, and the head-to-head comparisons.

## supported platforms

__Language and linting support by platform__
| platform                                                                   | JS   | TS   | Python | HubL | lint |
| -------------------------------------------------------------------------- | ---- | ---- | ------ | ---- | ---- |
| [zapier](/zapier)JavaScript and Python in Code by Zapier actions           | yes✓ | no·  | yes✓   | no·  | yes✓ |
| [n8n](/n8n)JavaScript, TypeScript and Python Code nodes                    | yes✓ | yes✓ | yes✓   | no·  | yes✓ |
| [hubspot data hub](/hubspot)JavaScript and Python custom code actions      | yes✓ | no·  | yes✓   | no·  | yes✓ |
| [pipedream](/pipedream)JavaScript, TypeScript and Python code steps        | yes✓ | yes✓ | yes✓   | no·  | yes✓ |
| [make](/make)JavaScript and Python custom code modules                     | yes✓ | no·  | yes✓   | no·  | yes✓ |
| [hubspot cms (hubl)](/hubl)HubL templates for HubSpot CMS, format and lint | no·  | no·  | no·    | yes✓ | yes✓ |

every platform is linted, not just formatted: oxlint for JavaScript, Ruff for Python, and an in-house 28-rule linter for HubL.

## tools

[python formatterdedicated Ruff-powered formatter and linter, 500+ rules, Black-compatible](/python)[json formatterformat JSON with platform payload detection and auto-generated access code](/json)[snippetscurated, editable code templates for every supported platform](/snippets)[browser extensionformat directly inside platform editors on Chrome and Firefox](/extension)

## comparisons

* [codefmt vs. Prettier PlaygroundPrettier Playground formats plain JavaScript and TypeScript source files; codefmt formats code that lives inside automation-platform wrappers. Both produce Prettier-compatible output.](/vs-prettier-playground)
* [codefmt vs. HubL Code Formatterstudionope's HubL Code Formatter is a Chrome extension focused on formatting HubL in the editor; codefmt is a free web tool and extension that formats and lints HubL (28 rules) alongside JavaScript, Python, and the other platforms.](/vs-hubl-code-formatter)
* [codefmt vs. HubSpot's VS Code ExtensionHubSpot's VS Code extension lints and authors HubL inside your local IDE on checked-out theme files; codefmt formats and lints HubL (28 rules) in the browser or inside HubSpot's design manager, with no local setup. Built for different moments.](/vs-hubspot-vscode)
* [codefmt vs. Zapier's built-in FormatterZapier's built-in Formatter transforms data values (dates, text, numbers) inside a Zap; codefmt formats the source code in Code actions. Same name, two different jobs.](/vs-built-in-zapier-formatter)

## frequently asked questions

which platforms does codefmt support?

codefmt formats and lints code for Zapier, n8n, Pipedream, Make, and HubSpot Data Hub, plus HubL templates for HubSpot CMS. JavaScript and Python work on all five code-action platforms; TypeScript is supported on n8n and Pipedream. The support matrix above breaks it down per platform. If pasted code carries another platform's signature (inputData means Zapier, $input means n8n), codefmt spots the mismatch and offers a one-click switch.

is codefmt free?

Yes. codefmt is free: no account, no payment, no sign-in. It runs in your browser, and the [Chrome and Firefox extensions](/extension) are free too.

does codefmt lint or just format?

Both, on every platform. It lints JavaScript with oxlint, Python with Ruff (500+ rules), and [HubL](/hubl) with codefmt's own [dedicated HubL linter](/hubspot-cms-linter).

which languages can codefmt format?

JavaScript, TypeScript, [Python](/python), [HubL](/hubl), and [JSON](/json), depending on the platform. JavaScript uses Biome (Prettier-compatible output), Python uses Ruff (Black-compatible), and HubL uses an in-house formatter.

what does codefmt compare to?

We keep head-to-head pages for [Prettier Playground](/vs-prettier-playground), studionope's [HubL Code Formatter](/vs-hubl-code-formatter), [HubSpot's VS Code extension](/vs-hubspot-vscode), and [Zapier's built-in Formatter](/vs-built-in-zapier-formatter). Each is built for a different job; the comparison explains which one fits yours.

[open the formatter→](/)[or get the browser extension](/extension)[or read the guides on the blog](/blog)

## for agents (added to every page twin, not part of the page)

- format API: POST https://codefmt.dev/api/format (OpenAPI: https://codefmt.dev/api/openapi.json, code up to 51,200 characters, 50KB of ASCII (400 above it), request body up to 100KB, counted in bytes (413 above it), no authentication)
- MCP server: POST https://codefmt.dev/api/mcp (tools: format_code, format_json, ask_codefmt; manifest: https://codefmt.dev/.well-known/mcp.json)
- rate limit: 60 requests per minute per ip across format api calls, mcp and a2a tool calls, and /ask (mcp handshakes and listings are not counted). the count is kept per server instance, so treat it as a ceiling to stay under rather than an exact budget. the format api reports where you stand in RateLimit headers and its 429 carries Retry-After; /ask answers a 429 with the message in answer, and an mcp tool call over the limit returns a tool result saying to try again in a minute
- auth statement: https://codefmt.dev/auth.md (no accounts, api keys or oauth; send no authorization header)
- site index for agents: https://codefmt.dev/llms.txt
- full reference (request bodies for every language, a copy-paste curl command, platform globals, troubleshooting): https://codefmt.dev/llms-full.txt
