Frakto Code EngineFrakto Code Engine is the missing link between your tools and your editor. A universal formatter & linter runner for Visual Studio Code that imposes nothing and enables everything. It pipes your editor’s content through any external process — formatter, linter, or custom script — and applies the output instantly, right back into the file. Run Prettier, ESLint, your own shell magic — even all at once. No restrictions. No hardcoded integrations. No opinions. Just you, your stack, and full control over how your code gets cleaned, checked, and styled. It’s the kind of tool power users dream of: Modular. Powerful. Unopinionated. Table of ContentsInstallation
Once installed, the extension will automatically activate for supported languages when editing files. Configuration of external scriptFrakto Code Engine does not include any built-in formatter or linter. Instead, it acts as a secure bridge between VS Code and an external script defined by you. 1. Connect your external toolSet the path to your custom script in the VS Code settings:
Your script can be written in any language and must accept JSON input via 2. Payload sent to your scriptFrakto will send the following structured object:
This payload is sent as a stringified JSON via the following environment variable:
3. Expected response formatYour script must return a valid JSON with this structure:
This architecture allows you to create your own powerful code engine, with full control over formatting, linting, and diagnostics—without touching the extension code. 4. Example External ScriptHere's a basic example in Node.js:
For a complete example of an external script implementation, you can check out or use frakto-coding-standards, the official companion tool designed to work seamlessly with this extension. UsageOnce the external script is properly configured, VS Code will communicate with it by sending a structured payload via the FRAKTO_PAYLOAD environment variable. This payload contains detailed information about the active document and editor state. The response from the external script will be handled as follows:
ContributingContributions are welcome and encouraged. If you'd like to help improve this plugin, please open a pull request or issue. Make sure to follow our contributing guidelines before submitting any changes. LicenseMIT License — Copyright © 2025 Frakto FundingThis project is maintained with love and dedication. |