about

codefmt is a code formatter, beautifier, and linter built specifically for developers who write code in automation platforms like zapier, n8n, pipedream, make, and hubspot data hub. it also formats and lints hubl, hubspot's cms template language.

these platforms wrap your code in async functions (javascript) or provide unique runtime globals like inputData or $input, and allow top-level await and bare return statements. this means standard formatters and linters either fail to parse your code or produce false positives.

codefmt solves this by automatically wrapping your code in the correct platform-specific structure before formatting and linting, then stripping the wrapper before returning the result. you paste raw code, you get beautifully formatted code back.

besides the web app, codefmt also ships as a chrome and firefox extension so you can format code directly inside platform editors without leaving the page. for python-specific workflows, see the dedicated python formatter page. ruff-powered, with 500+ lint rules and black-compatible formatting.

not to be confused with

codefmt at codefmt.dev (this project) is a web app, browser extension, and api for formatting code inside automation-platform code steps. it is unrelated to other projects that share the “codefmt” name, including a separate open-source cli for formatting fenced code blocks inside markdown files. different project, different scope, different domain.

powered by

biome: javascript/typescript formatter, prettier-compatible. runs in your browser (webassembly) and on the server biomejs.dev
oxlint: rust-based javascript linter, 50-100x faster than eslint oxc.rs
ruff: rust-based python formatter and linter, 500+ rules, black-compatible astral.sh
next.js: react framework for the web nextjs.org

features

platform variants: n8n modes, pipedream component types, hubspot workflow styles
python support: ruff-powered formatting and linting for zapier, n8n, pipedream, make, and hubspot data hub python code actions
typescript support: full typescript formatting and linting for n8n and pipedream
hubl formatting + linting: format and lint hubspot cms template language with full support
json formatter: format json with platform payload detection, auto-generates access code for zapier, n8n, pipedream, and hubspot
snippet library: 30+ curated code templates. edit, format, and copy directly from the card
light + dark theme: warm parchment light theme and vs code dark modern theme
lint plugins: promise, security, node, and performance lint rule plugins
chrome + firefox extension: format code directly in zapier, n8n, pipedream, make, and hubspot editors. install for chrome firefox
offline support: formatting works without internet. javascript and python run client-side via webassembly, and hubl via a built-in javascript formatter
instant formatting: all languages format in the browser with no server round-trip. javascript lint diagnostics are computed server-side and arrive asynchronously

principles

free: no accounts, no payment, no limits
private: no cookies, no tracking, no personal data. anonymous, aggregate analytics via vercel and umami.
fast: formatting powered by rust-based tools

support

codefmt is free. if it saves you time, consider supporting the project.