{"id":21045647,"url":"https://github.com/vertexbz/gcode-postprocessor","last_synced_at":"2026-04-21T16:02:56.959Z","repository":{"id":196736021,"uuid":"697016092","full_name":"vertexbz/gcode-postprocessor","owner":"vertexbz","description":"Modular G-Code postprocessor","archived":false,"fork":false,"pushed_at":"2024-01-05T19:45:26.000Z","size":49,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-20T17:48:37.963Z","etag":null,"topics":["3d-printing","gcode","klipper","klipper3d","orcaslicer","postprocessor","prusaslicer","superslicer"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vertexbz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-26T22:06:45.000Z","updated_at":"2024-03-29T23:14:41.000Z","dependencies_parsed_at":"2024-01-05T20:38:31.707Z","dependency_job_id":"80ee9ef6-29f2-4da6-9c23-be3479728401","html_url":"https://github.com/vertexbz/gcode-postprocessor","commit_stats":null,"previous_names":["vertexbz/gcode-postprocessor"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertexbz%2Fgcode-postprocessor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertexbz%2Fgcode-postprocessor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertexbz%2Fgcode-postprocessor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vertexbz%2Fgcode-postprocessor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vertexbz","download_url":"https://codeload.github.com/vertexbz/gcode-postprocessor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243489758,"owners_count":20299001,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-printing","gcode","klipper","klipper3d","orcaslicer","postprocessor","prusaslicer","superslicer"],"created_at":"2024-11-19T14:23:31.193Z","updated_at":"2025-12-29T17:03:20.059Z","avatar_url":"https://github.com/vertexbz.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# G-Code Postprocessor\nModular G-Code postprocessor for Prusa/SuperSlicer\n\n## Installation\nClone this repository `git clone https://github.com/vertexbz/gcode-postprocessor.git`\n\nProvide path to `./run.sh` file of the cloned repository in `Print Settings \u003e Output options \u003e Post-processing scripts` of your slicer\n\n## Configuration\n\n### Log level\nLog level / verbosity can be used by providing `-v` (or `--verbose`) CLI flag, multiple use increases verbosity\n\n#### Levels\n- Default: Error\n- `v`: Info\n- `vv`: Info, long format\n- `vvv`: Debug\n- `vvvv`: Debug, long format\n\n### Config files\nDefault configuration is available in and loaded from `./config.default.yaml`\\\nUser defaults can be provided via `./config.yaml` (or `./config.yml`) *this file is not part of this repository, default one can be used as template*\\\nDefaults are overriden by file provided via `-c` (or `--config`) CLI parameter\n\n\n### Dry run\nDry run mode fully processes the input but doesn't save the output to file \n\n\u003ctable\u003e\u003ctr\u003e\n\u003cth\u003eCLI\u003c/th\u003e\u003cth\u003eYAML\u003c/th\u003e\n\u003c/tr\u003e\u003ctr\u003e\n\u003ctd valign=\"top\"\u003e\n\n`-d`\\\n`--dry`\\\n`--dry-run`\n\u003c/td\u003e\n\u003ctd valign=\"top\"\u003e\n\n```yaml\ndry_run: True\n```\n```yaml\ndry-run: False\n```\n```yaml\ndryRun: true\n```\n```yaml\ndryrun: false\n```\n\u003c/td\u003e\n\u003c/tr\u003e\u003c/table\u003e\n\n### Macros\n\nFeatures look for popular custom macros which names may vary \\\nDefault configuration file contains full list of used macros\n\n\u003ctable\u003e\u003ctr\u003e\n\u003cth\u003eCLI\u003c/th\u003e\u003cth\u003eYAML\u003c/th\u003e\n\u003c/tr\u003e\u003ctr\u003e\n\u003ctd valign=\"top\"\u003e\n\n`-m print_start=HELLO_THERE`\\\n`--macro print_end=BYE_BYE`\n\u003c/td\u003e\n\u003ctd valign=\"top\"\u003e\n\n```yaml\nmacro:\n  print_start: MY_CUSTOM_START_PRINT\n  print_end: MY_CUSTOM_END_PRINT\n```\n\u003c/td\u003e\n\u003c/tr\u003e\u003c/table\u003e\n\n\n### Features\nTo have actual benefit from using postprocessor, desired features have to be enabled, via configuration file or with CLI flag\n\n\u003e - Features can be specified multiple times, with same or different configurations\n\u003e - Features are applied in the order provided, first config files, then cli\n\u003e - Configuration file features configuration overrides previous ones, CLI specified features are appended\n\n\u003ctable\u003e\u003ctr\u003e\n\u003cth\u003eCLI\u003c/th\u003e\n\u003ctd valign=\"top\"\u003e\n\n`-f start-xy -f pa-extruder-fixer`\\\n`--feature start-xy --feature feature-with-config=option1=value,other_option={options_option=1}`\n\u003c/td\u003e\n\u003c/tr\u003e\u003ctr\u003e\n\u003cth\u003eYAML\u003c/th\u003e\n\u003ctd valign=\"top\"\u003e\n\n```yaml\nfeature:\n  - pa-extruder-fixer\n  - start-xy\n  - feature-with-config:\n      option1: value\n      other_option: \n        options_option: 1\n```\n\nto clear all prior features\n```yaml\nfeature: []\n```\n\u003c/td\u003e\n\u003c/tr\u003e\u003c/table\u003e\n\n\n## Built-in features\n\n### [`start-xy`](features%2Fstart_xy.py)\nDetects first coordinate in g-code and sets X and Y coordinates to START_X and START_Y params of print start macro respectively\n\n### [`no-final-unload`](features%2Fno_final_unload.py)\nRemoves final filament unload procedure for multi-material prints\n\n### [`pa-extruder-fixer`](features%2Fpa_extruder_fixer.py)\nFixes `SET_PRESSURE_ADVANCE` gcode for clipper and multi-material prints (removes `EXTRUDER` parameter)\n\n### [`no-morning-jumps`](features%2Fno_morning_jumps.py)\nRemoves `Z` axis movements prior to moving to initial `XY` position\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvertexbz%2Fgcode-postprocessor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvertexbz%2Fgcode-postprocessor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvertexbz%2Fgcode-postprocessor/lists"}