Scientific Illustrator: Editable Figures in PowerPoint, WPS and draw.io Through Codex
Editable scientific figures in PowerPoint and draw.io via Codex/MCP with Designer-Drawer-Reviewer-Corrector quality gates.
At a glance
- What is it?
- A Codex plugin that redraws an uploaded reference figure as native shapes, text and connectors inside PowerPoint, WPS Presentation or draw.io Desktop, with a Designer-Drawer-Reviewer-Corrector loop. The interesting part is not the drawing. It is the refusal to claim a connection it cannot verify.
- Who is it for?
- Adopt Scientific Illustrator if your figures must stay editable inside PowerPoint, WPS Presentation or draw.io and you already run Codex, because the alternative is a flat PNG pasted into a slide.
- 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 8 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 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The problem is not drawing. It is ending up with something you can still edit
Published figures usually arrive as flat images. A raster micrograph, a screenshot of a diagram, a PDF panel exported at whatever resolution the journal accepted. If you need to change one label, one arrow direction or one axis unit, you redraw the whole thing in Illustrator or Inkscape, or you paste the image into a slide and live with it. Neither outcome is good when a reviewer asks for a revision two days before resubmission.
Scientific Illustrator targets that specific gap. You upload a reference image to Codex and the plugin attempts to reconstruct it inside Microsoft PowerPoint, WPS Presentation or draw.io Desktop using editable objects: text boxes, shapes, connectors, tables, charts and groups. The README describes the author as a geology PhD, and the prompt templates read like they were written by someone who has rebuilt the same stratigraphic column more than once.
It is aimed at researchers and research-adjacent people who already work in slide decks or draw.io files and who want the reconstruction to live in the same file format they already edit. It is not aimed at someone who wants a vector file with pixel-perfect fidelity to a photograph. The README is explicit that content which genuinely cannot be reconstructed from shapes, such as micrographs and complex textures, is cropped and inserted as an image, with the surrounding text, arrows and borders remaining editable.
Designer, Drawer, Reviewer, Corrector: what the quality gates actually gate
The repository description names four roles: Designer, Drawer, Reviewer and Corrector. The README does not document them as separate agents with separate prompts, so treat the naming as a description of the workflow rather than a published architecture. What the prompt templates do show is the loop those roles imply.
The user prompt instructs the plugin to draw region by region, and after each region to check structure and a preview image, correcting problems before moving on. Only after all regions are done does a full-figure comparison check run, followed by saving the PPTX and exporting a final preview. In the draw.io variant the per-region check is a canvas screenshot; in the WPS variant it is an explicit call to refresh, with three separate flags to inspect: open_dispatched, document_open_verified and refresh_verified.
That flag set is the most concrete piece of engineering visible in the material. It separates "we asked the host to open the file" from "the host confirmed it opened the file" from "the refresh actually landed." A plugin that collapsed those into a single boolean would be easier to write and much easier to lie with. The Reviewer and Corrector roles are, in effect, the region-level and full-figure comparison steps, and the quality gate is the requirement that a fix happens before the next region is attempted rather than in one pass at the end.
Connection honesty: COM, officejs-context-sync and the OOXML fallback
The PowerPoint prompt contains a sentence that most automation tools of this kind omit: only COM or officejs-context-sync may claim a connection to the current window, and if OOXML is used, the tool must state plainly that it is editing a working copy. Those are three different mechanisms with three different levels of certainty, and the plugin is instructed to name which one is in play.
The WPS prompt goes further and asks the tool to confirm target_application=wps and microsoft_powerpoint_used=false before doing anything. That check exists because WPS and PowerPoint share enough surface area that a tool can plausibly address the wrong one. The README also states that WPS is driven through an editable PPTX working copy and that the plugin will not pretend to be connected to an arbitrary unsaved window. On macOS the plugin verifies that a file is genuinely open in WPS. On Windows, where that verification is not possible, it reports the state as unknown rather than guessing.
The README is candid about the limits of its own testing here. Continuous integration runs on Ubuntu, macOS and Windows and covers code, MCP, Python, PowerShell, path discovery and OOXML regression tests, and the release notes for v1.5.3 mention a real Mac used to verify PowerPoint open, refresh and close, WPS file-specific opening, and the live draw.io canvas. But GitHub's public runners do not carry commercial PowerPoint or WPS licences, so in-application integration on Windows has to be confirmed by the installed status tool. The README states directly that simulated tests must not be treated as a successful real-machine connection. That is an unusual admission to put in a README and it is the reason the connection-state vocabulary in the prompts matters.
Installing through the Codex marketplace, or through the shell scripts
The documented path is to send Codex a natural-language instruction: install the repository, register its root as a Codex Marketplace, and install scientific-illustrator@scientific-illustrator-tools. After that you fully quit and reopen Codex, start a new task, and open the target application.
The manual equivalent is three commands from a clone:
codex plugin marketplace add "$(pwd)" codex plugin add scientific-illustrator@scientific-illustrator-tools
Windows users can run install.ps1 after downloading it to the temp directory and invoking powershell with -ExecutionPolicy Bypass. macOS and Linux users can pipe install.sh from raw.githubusercontent.com into bash. The README notes that after installing or updating, Codex must be restarted and a new task created, which is the kind of detail that costs an hour if you skip it.
For Mac PowerPoint there is an optional live mode, and it is genuinely optional: the README says a normal install already produces an editable PPTX, and the extra steps are only for watching object-by-object drawing in real time. Those steps run officejs-setup.mjs prepare and then sideload from the repository directory, with an openssl x509 command in between to inspect the generated localhost certificate. You then trust that certificate manually in Keychain Access, restart PowerPoint, and enable Scientific Illustrator Live from Insert, My Add-ons. The README states plainly that the plugin does not modify system certificate trust on its own. The v1.5.2 release notes mention an icon-format fix that prevented the add-in from being silently ignored, which is a reminder that sideloaded Office add-ins fail quietly when their manifest is malformed.
Where this breaks: unknown shapes, unverifiable hosts and the wrong kind of figure
The clearest failure mode documented is in draw.io. Shape names that draw.io does not recognise cause a direct error. The plugin does not silently degrade an unknown shape into a rectangle. That is the right behaviour for correctness and the wrong behaviour for anyone expecting a graceful approximation, because a single unrecognised shape name can stop a region rather than produce a slightly wrong one.
The second constraint is host coverage. PowerPoint, WPS Presentation and draw.io Desktop are the three supported targets. LibreOffice Impress and Keynote are absent from the support table, and nothing in the material suggests a path to them. If your institution standardises on Impress, this tool does not apply to you.
The third is the nature of the source figure. If your reference is predominantly micrographs, gels, spectra screenshots or textured maps, the plugin will insert those regions as images by design. What remains editable is the annotation layer: labels, arrows, borders, tables. For a figure that is mostly photograph with three arrows on it, the editable-object premise delivers very little, and you have paid the setup cost of a Codex plugin, a host application and a restart cycle to get roughly what a screenshot would have given you.
A fourth, quieter issue is verification asymmetry. macOS gets file-open verification for WPS and a real-machine test record for PowerPoint, WPS and draw.io live canvas. Windows gets an unknown state when verification is impossible. If your workflow depends on the tool confirming it is editing the file you think it is editing, macOS is currently the stronger platform in the material as written.
Compared with drawio-scientific-illustrator and with plain image-to-vector conversion
The README states that this project is the upgraded, consolidated version of drawio-scientific-illustrator and that future features will only land here. That makes the predecessor a dead end for new work, not a parallel option. If you have it installed, the migration is a reinstall against this repository rather than a configuration change.
The more useful comparison is against conventional image-to-vector conversion. A typical raster-to-SVG tool traces edges and emits paths. The output is scalable and technically vector, but every label becomes an outlined glyph, every arrow becomes a filled polygon, and editing a single word means deleting the path and retyping the text. Scientific Illustrator does the opposite: it targets semantic objects. Text stays text, arrows stay connectors, tables stay tables. The cost is fidelity. A traced path can follow a curve exactly; a connector is a straight or routed line between two points, and the plugin has to approximate whatever the original did.
That trade-off defines the tool's audience. If the figure will be edited again, semantic objects win. If the figure is final and only needs to scale cleanly, tracing is simpler and has no host application requirement. The plugin's own fallback behaviour acknowledges this: when shapes cannot represent the content, it inserts the region as an image rather than forcing a bad reconstruction.
Versioning, rollback and what the MIT licence does not settle
Releases are tagged and the README states that older versions are not overwritten. Rolling back means fetching tags, checking out a specific tag such as v1.5.0, and then re-registering the marketplace and reinstalling the plugin from that directory. Updating means running the install script again. Either way, Codex needs a restart and a new task. There is no documented in-place upgrade command beyond that.
Maintenance cost is mostly version churn around host compatibility rather than around the drawing logic. The release notes between v1.5.0 and v1.5.3 describe cross-platform compatibility fixes, connection-state handling, table, chart and arrow updates, a Mac PowerPoint add-in icon fix, and a fix for PowerPoint and WPS repeatedly stealing window focus. That is a plugin whose maintenance burden sits at the boundary with three closed-source host applications, and that boundary moves whenever a host updates.
The project is MIT licensed, which permits commercial and private use, modification and redistribution with the licence and copyright notice retained. Nothing here is legal advice and the licence text governs. Two things the MIT grant does not cover: PowerPoint, WPS Presentation and draw.io Desktop are separate products under their own terms, and the optional macOS live mode requires you to trust a locally generated certificate in your system keychain, which is a decision about your own machine rather than about the licence. A PRIVACY.md file exists alongside LICENSE, and anyone handling unpublished research figures should read it before uploading reference images to Codex.
Editorial conclusion
Adopt Scientific Illustrator if your figures must stay editable inside PowerPoint, WPS Presentation or draw.io and you already run Codex, because the alternative is a flat PNG pasted into a slide. Do not adopt it if you want a one-shot command-line image converter, if your target host is LibreOffice Impress or Keynote, or if your reference figures are mostly micrographs and textured photographs, since those regions are inserted as images anyway and the editable-object premise buys you little. Before committing, verify three things on your own machine: that the status tool reports a verified connection rather than an unknown state on Windows, that your draw.io Desktop build accepts the shape names the plugin emits instead of raising an error, and that the Office.js sideload path on macOS resolves the localhost certificate you trusted manually, since the plugin does not touch system trust stores.
Community notes