Skip to content

Add lazarus plugin#1437

Open
ksmith1489 wants to merge 4 commits intoOctoPrint:gh-pagesfrom
ksmith1489:add-lazarus-plugin
Open

Add lazarus plugin#1437
ksmith1489 wants to merge 4 commits intoOctoPrint:gh-pagesfrom
ksmith1489:add-lazarus-plugin

Conversation

@ksmith1489
Copy link
Copy Markdown

@ksmith1489 ksmith1489 commented May 10, 2026

  • You have read the "Registering a new Plugin" guide.
  • You want to and are able to maintain the plugin you are registering, long-term.
  • You understand why the plugin you are registering works.
  • You have read and acknowledge the Code of Conduct.

What is the name of your plugin?

Lazarus

What does your plugin do?

Lazarus helps users recover failed 3D prints when the partially completed print is still attached to the bed.

The plugin generates resume G-code locally inside OctoPrint from the original G-code file, the measured print height, and the detected layer height of that file. Yes it even considers and calculates if there is a different initial layer height. Also works in spiral vase mode. Lazarus provides a guided alignment workflow so the user can safely align the printer to the real-world print position before choosing to resume. It takes a relatively complex series of problems and simplifies it so that even a novice to 3d printing can resume a failed print easily, safely, accurately, and surprisingly fast. Along with generating a safe resume Gcode that carefully grabs the needed information and blocks anything that could cause a mishap it also calculates the exact layer of failure, a true alignment point which is the lowest x value or the highest x value depending on which side the user entered to be the lowest and paired with y at calculated z to provide an easy real world physical reference point at which a user can toggle to paper test perfect. It displays a preview of the resume gcode for the user's inspection along with a variety of different methods for starting the alignment process based on a user's firmware and skill level. An advanced Marlin user may choose to attest to their printer's current coordinate state while an advanced klipper user may want to begin with the coordinates that their printer parks at after a cancel_print event. The beginner may want to stick with the safe resume homing which homes x and y and sets a temporary safe z without moving z until a true z has been established through user confirmed alignment. It is way easier done than said. Lazarus has been carefully developed to attend to most all of the nuances of different printers, gcode flavors and firmware and it does it very well keeping it simple for the user. What sets Lazarus apart is the ability to establish coordinate state starting with total loss of internal coordinates, grayed out and motors locked and align to the partial print and the reconstructed gcode just as accurately and even more so than G28 homing with no unsafe motion. Actually only 2 motion commands in the whole process and one of them is a z hop after alignment so the user can begin to heat the nozzle without melting the partial print and the other does not move z at all.
Lazarus not only makes resuming a failed print worth doing, it actually makes it fun and very satisfying.

Optional Klipper / Moonraker support is also included through a user-provided local Moonraker address.

Where can we find the source code of your plugin?

https://github.com/ksmith1489/lazarus-plugin

Was any kind of genAI (ChatGPT, Copilot etc) involved in creating this plugin?

Yes ChatGPT/ recently Codex were used as development assistants during development and cleanup. I understand the plugin’s architecture and behavior and I am maintaining it directly. They just help with the code. The idea, the methods and systems, the processes, the flow were all human. And I have had some experience coding trading bots and indicators on metatrader and trading view some time ago and have been working on this project nonstop over full time for several months and it works and I will keep it that way.

Is your plugin commercial in nature?

Yes.

Lazarus is commercial software. Installation is free, but resume generation and execution require an active subscription.

Pricing, activation, license, terms, and privacy information are available here:

https://app.lazarus3dprint.com/activate
https://app.lazarus3dprint.com/license
https://app.lazarus3dprint.com/terms
https://app.lazarus3dprint.com/privacy

Does your plugin rely on some cloud services?

Partially.

Resume G-code generation runs locally inside the OctoPrint plugin. The original G-code file is not uploaded to the Lazarus service for resume generation.

The plugin does use https://app.lazarus3dprint.com for activation and subscription validation.

The plugin is marked with the cloud attribute and includes a privacy policy link:
https://app.lazarus3dprint.com/privacy

If the license validation service is unavailable, Lazarus fails closed for resume generation and execution without causing OctoPrint itself to malfunction.

Further notes

This is a fresh registration under Lazarus after the previous OctoGoat submission was closed.

This resubmission addresses the review items raised on #1435:

  • the plugin has been renamed from OctoGoat to Lazarus;
  • packaging has been migrated to pyproject.toml, and the repository layout has been aligned with the current OctoPrint cookiecutter-style scaffold while avoiding the legacy setup.py packaging path;
  • the promotional / watermarked hero assets were removed and the UI copy was simplified;
  • unused settings, no-op startup code, and unreferenced API / frontend paths were removed;
  • checkout remains outside OctoPrint, and the plugin keeps server-side permission checks, server-side license enforcement, the privacy policy link, and the software update hook;
  • the source repo now includes a regression test for the resume engine.

If there are any remaining repository-specific issues with this Lazarus submission, I would appreciate a concrete list and I will address them directly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants