Open-source project
icebird1998/scientific-illustrator avatar
icebird1998/scientific-illustrator

Scientific Illustrator: editable figures in PowerPoint and draw.io through Codex

Editable scientific figures in PowerPoint and draw.io via Codex/MCP with Designer-Drawer-Reviewer-Corrector quality gates.

887 stars67 forksJavaScriptMIT

At a glance

What is it?
A Codex plugin that redraws an uploaded reference figure as editable objects in Microsoft PowerPoint, WPS Presentation or draw.io, with a Designer-Drawer-Reviewer-Corrector loop and honest connection reporting.
Who is it for?
Adopt this plugin if your figures must stay editable in PowerPoint, WPS or draw.io and you already work inside Codex on Windows or macOS; skip it if you only need flat raster output, since the README states that micrographs and complex textures are inserted as cropped images anyway.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 22 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Scientific Illustrator solves, and who it is for

Redrawing a published figure as vector objects is normally manual work: you import the reference image, trace boxes, retype labels, rebuild arrows, and repeat that for every panel. Scientific Illustrator targets that specific step. You upload a reference image to Codex, and the plugin attempts to recreate the figure using editable text, shapes, connectors, tables and charts inside Microsoft PowerPoint, WPS Presentation or draw.io Desktop. The README describes the author as a geology PhD, and the intended output is a figure you can still edit afterwards rather than a flattened picture. The repository is the successor to drawio-scientific-illustrator; the README states that future work lands only in this project. It is for people who already use Codex and who need the final artifact to stay editable in one of those three applications. It is not a general image generator, and it is not a drawing tool you operate by hand.

Designer, Drawer, Reviewer, Corrector: the quality gates

The repository description names four roles that shape the workflow: Designer, Drawer, Reviewer and Corrector. The README's prompt templates show how this plays out in practice. The prompts instruct the agent to draw region by region, and to check structure and a preview after each region before continuing, with corrections applied before moving on. Only after all regions are done does the prompt ask for a full-figure comparison check, a save of the PPTX, and export of a final preview. The draw.io prompt asks for an editable .drawio file plus a PNG preview exported at 2000 px wide. That region-by-region gate is the main mechanism separating this from a single-shot conversion: errors are meant to be caught while the figure is still being assembled. How strictly the gates hold depends on the model following the prompt, since the README provides the instructions rather than an enforced state machine.

Install through Codex, or run the install script

The README's first path is to send Codex a short instruction that registers the repository root as a Codex Marketplace and installs the plugin. After installation you must fully quit and reopen Codex, start a new task, and have PowerPoint, WPS Presentation or draw.io Desktop open.

text
请安装 https://github.com/icebird1998/scientific-illustrator。
把仓库根目录注册为 Codex Marketplace,然后安装
scientific-illustrator@scientific-illustrator-tools。完成后提醒我重启 Codex。

On Windows the alternative is a PowerShell installer, and on macOS or Linux a curl pipe into bash.

bash
curl -fsSL https://raw.githubusercontent.com/icebird1998/scientific-illustrator/main/install.sh | bash

If you prefer to control each step, the manual route clones the repository and registers it explicitly. The package.json declares Node >=22, so check your Node version before running the scripts directly.

bash
git clone https://github.com/icebird1998/scientific-illustrator.git
cd scientific-illustrator
codex plugin marketplace add "$(pwd)"
codex plugin add scientific-illustrator@scientific-illustrator-tools

After any install or update, restart Codex and create a new task. For a first real use, open PowerPoint, upload the reference figure to Codex, and paste the plugin prompt from the README. The prompt tells the agent to connect to PowerPoint, inspect status, available capabilities, backend and the current slide, and to create a presentation if none exists. The expected result is a slide built from editable objects, saved as PPTX with an exported preview image.

Connection honesty: COM, officejs-context-sync and OOXML working copies

The most interesting design decision is that the plugin is required to be explicit about what it is actually connected to. The PowerPoint prompt states that only COM or officejs-context-sync may claim a connection to the current window; if OOXML is used, the agent must say it is editing a working copy. The WPS prompt goes further, asking the agent to set host_application to wps, verify target_application=wps and microsoft_powerpoint_used=false, and to avoid claiming a link to an unsaved window. For WPS the README describes drawing into an editable PPTX working copy that refreshes at checkpoints in the background rather than repeatedly stealing focus. The release notes for v1.5.1 mention a fix for PowerPoint and WPS repeatedly grabbing the window, with background drawing becoming the default. This is a deliberate trade: background drawing keeps your machine usable, but a working copy is a weaker guarantee than live control of the window you are looking at. If you need to watch every object appear, the README says to append a line setting focus_policy to foreground.

Where it fails, and when it is the wrong tool

The README is unusually direct about the boundaries. Micrographs and complex textures cannot be reconstructed from shapes, so only the minimum necessary region is inserted as an image while text, arrows and borders stay editable. If your figure is mostly photographic, the editable-object promise covers a small part of it. draw.io has a hard failure mode: an unrecognised shape name raises an error rather than quietly falling back to a rectangle. That is better than silent degradation, but it means a figure built from unusual stencils may stop rather than approximate. On Windows, the README notes that the public GitHub runners have no commercial PowerPoint or WPS, so in-application integration must be confirmed by the installed status tool, and simulated tests must not be treated as proof of a real connection. In other words, the project itself tells you not to trust CI as evidence that your Windows desktop will connect. The officejs-setup script also does not modify system certificate trust automatically, so the Mac live mode requires you to trust the localhost certificate by hand in Keychain Access. If you want a fully hands-off pipeline with no manual certificate step, this is the wrong tool.

Compared with scripting python-pptx or the draw.io CLI directly

The obvious alternative is to script the output yourself, for example with python-pptx for PowerPoint or draw.io's own file format through its command line. The difference is in who decides the layout. A python-pptx script executes coordinates and property assignments you wrote in advance; it cannot look at a reference image and choose where a connector should attach. Scientific Illustrator puts a model in the loop, so the mapping from reference image to shapes is inferred rather than specified, and the Reviewer and Corrector roles exist precisely because that inference is unreliable. The cost is determinism: a script produces the same file every run, while this plugin's output depends on the model and on the region-by-region checks. If your figures are template-driven and repeatable, a script is cheaper and more predictable. If they vary and you would otherwise trace them by hand, the inference is the point. A second alternative is to keep working in drawio-scientific-illustrator, the predecessor, but the README states that future features are only updated in this project.

Licence, updates and the cost of staying current

The repository is MIT licensed, which permits reuse and modification under the terms in the LICENSE file; this is a description of the licence, not legal advice, and you should read the file and your organisation's policy if the plugin is used commercially. A PRIVACY.md is also present, which matters because reference images are uploaded to Codex. On maintenance: the last push was on 2026-09-08, and the repository is not archived. Releases are frequent and small. v1.5.4, dated 2026-08-08, only standardised the author attribution; v1.5.3, a week earlier, fixed cross-platform compatibility, connection status and table, chart and arrow updates, and added three-platform CI with real open verification and the draw.io anti-fake-shape check; v1.5.2 fixed the Mac PowerPoint add-in icon format so the add-in is not silently ignored. That cadence means upgrade cost is mostly re-running the installer and restarting Codex. Rollback is documented: old versions are not overwritten, and you can fetch tags and check out v1.5.0, then re-register the Marketplace from that directory and install the plugin again. The hidden cost is the manual Mac certificate step, which you repeat whenever the localhost certificate changes.

Editorial conclusion

Adopt this plugin if your figures must stay editable in PowerPoint, WPS or draw.io and you already work inside Codex on Windows or macOS; skip it if you only need flat raster output, since the README states that micrographs and complex textures are inserted as cropped images anyway. Before trusting it on a deadline, verify three things on your own machine: that powerpoint_officejs_status reports connected=true if you intend to use Mac PowerPoint live drawing, that the status tool confirms a real Windows PowerPoint or WPS connection rather than an OOXML working copy, and that your draw.io shapes are recognised, because the README says an unknown shape name raises an error instead of silently degrading to a rectangle.

Frequently asked questions

Which applications does Scientific Illustrator work with?

The README lists Microsoft PowerPoint, WPS Presentation and draw.io Desktop, on both Windows and macOS. PowerPoint and WPS produce editable PPTX files, while draw.io is controlled directly on its live canvas and saved as an editable .drawio file with an exported PNG preview.

Does Scientific Illustrator need Node.js installed?

The package.json declares an engines field of node >=22, so the repository's own scripts expect Node 22 or newer. The README's recommended path installs the plugin through Codex rather than asking you to run the scripts yourself.

Can Scientific Illustrator reproduce a micrograph as editable shapes?

No. The README states that content which genuinely cannot be rebuilt from shapes, such as micrographs or complex textures, is inserted as an image covering only the minimum necessary region, while text, arrows and borders remain editable.

How do I go back to an older version of Scientific Illustrator?

The README says old versions are not overwritten. You can run git fetch --tags and git checkout v1.5.0, then re-register the Marketplace from that directory and install the plugin again.

Official sources

  1. icebird1998/scientific-illustrator on GitHub
  2. Issues
  3. License: MIT
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/icebird1998-scientific-illustrator.svg)](https://hysenlabs.com/projects/icebird1998-scientific-illustrator)