---
title: "blog: formatting guides for zapier, n8n, hubspot - codefmt"
url: https://codefmt.dev/blog
updated: 2026-10-05
sources:
  - https://codefmt.dev/blog
licence: "© codefmt. Cite with attribution to https://codefmt.dev."
---

# blog

guides on formatting and linting code inside automation platforms. each one covers why standard formatters fail on a platform's wrapped runtime, and how to get clean, working code back.

* [how to format python and javascript in make.com modules](/blog/format-python-make-com)  
format and lint Make code modules: python 3.12 and node 20 javascript. codefmt knows the input global and wraps bare return so Ruff and oxlint parse it.  
updated October 5, 2026
* [how to format code in pipedream code steps](/blog/format-code-pipedream-code-steps)  
format and lint Pipedream component code. codefmt wraps defineComponent and defineSource and knows steps and $, so actions and sources format cleanly.  
updated October 5, 2026
* [which hubl tags are deprecated in hubspot, and the fixes](/blog/hubspot-deprecated-hubl-tags)  
every deprecated hubl tag and its replacement: widget, widget\_block, widget\_attribute, custom\_widget, and widget\_container, with a one-click fix for each.  
updated October 5, 2026
* [how to fix the hubl unclosed block error in hubspot](/blog/hubl-unclosed-block-error)  
fix the hubl unclosed block error: why {% if %}, {% for %}, and {% block %} fail to publish in HubSpot, and how to find the missing end tag in seconds.  
updated October 5, 2026
* [how to format javascript in n8n code nodes](/blog/format-javascript-n8n-code-node)  
format and lint n8n Code node javascript and typescript. codefmt knows $input, $json, items, and both execution modes, so its globals aren't flagged undefined.  
updated October 5, 2026
* [how to format and beautify hubl (and lint it before publish)](/blog/format-beautify-hubl)  
beautify HubL templates and catch bugs before HubSpot publishes them. codefmt is a dedicated HubL linter: 28 rules, one-click fixes, free in the browser.  
updated October 5, 2026
* [how to format javascript and python in a zapier code step](/blog/format-javascript-python-zapier-code-step)  
format and lint Code by Zapier javascript and python without Prettier parse errors. codefmt knows inputData and output, and runs free in your browser.  
updated October 5, 2026

## 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
