Holo Card Studio makes the sort of artifact that usually gets lost between an image generator and a 3D artist. Give the Codex skill a description or reference image and it organizes the result into a layered card, an editable Blender scene, and a browser viewer. The appeal is easy to understand: you can tilt the card, flip it, adjust its effect, then open the underlying scene instead of being stuck with a rendered JPEG.
The project has two routes. Holographic cards use four image layers for the background, subject, line art, and typography. Lenticular cards use two complete card faces and switch between them as the viewing angle changes. The web side uses Three.js, while Blender produces the scene and rendered assets. That pairing is the project’s best idea because the deliverable can serve as a shareable page and a file a 3D artist can keep editing.
The deliverable is editable, but the artwork still comes from you
The repository contains 65 files and about 2,049 lines of source, yet it does not include the generated artwork. You supply or create the images in a separate project directory, and the pipeline assembles them into card.blend, web assets, configuration, and renders. The MIT license covers the skill code and text; it expressly leaves uploaded references and generated art outside the repository license.
That boundary matters. Holo Card Studio is an assembly workflow, not an image model. Codex is expected to interpret the request, prepare the artwork, write the configuration, run the pipeline, launch the viewer, and inspect the result. If your input layers have weak alpha masks or mismatched dimensions, the output can still be wrong even when the command exits successfully. The verification guide tells you to inspect the artwork registration and confirm that newly generated files replaced any stale outputs.
What happened when we ran it
Our fresh Python 3.12 sandbox installed 35 packages in 22 seconds and occupied 37 MB. The build completed in another 10 seconds. pip-audit found zero known vulnerabilities in that environment, and the repository was only 0.3 MB when checked out at commit cce9718.
The tests did not finish cleanly. They ran for 12 seconds, with 6 passing and 1 failing out of 7. The failing case checks that a Blender failure stops the pipeline even when old output files exist. It stopped before exercising that behavior because from PIL import Image raised ModuleNotFoundError: No module named 'PIL'. The log gives us no basis to blame Blender or the test logic; it shows that Pillow was unavailable to that test process.
That is a useful failure because the README lists Python 3 plus Pillow as an environment requirement. A clean install that reports success yet leaves the suite unable to import Pillow has a packaging gap. There is no Dockerfile or hosted CI workflow to settle how the intended environment should be assembled. The repository does include a test directory, so the expected behavior is visible even though our run did not prove every case.
Blender is fetched for you, then becomes your responsibility
The pipeline can download a portable Blender build into the project’s tools directory and verify its SHA-256 hash. It can also reuse an installed copy or accept an explicit executable path. Project-local Blender preferences avoid altering a user-wide setup, and flags allow the static render or npm install to be skipped. Those are thoughtful operational choices for an agent that may run repeatedly.
The convenience ends where Blender compatibility begins. An open issue dated September 25 reports that lenticular mode is blocked under Blender 5.2.2 LTS by compositor API changes and by Pillow being absent from Blender’s bundled Python. The report names failing code paths and proposed workarounds, but it remains an open report rather than a merged fix. Holographic and lenticular modes therefore need separate checks, exactly as the project’s own verification guide warns.
The browser viewer needs a real browser check
Holo Card Studio produces a local Three.js viewer with drag, flip, auto-rotation, sliders, and image saving. The documentation also asks the operator to check a narrow viewport, touch input, horizontal overflow, and the browser console. Web shaders recreate the same kind of parallax and shimmer as the Blender scene, although the guide says the lighting and back artwork are not pixel-identical.
That honesty is welcome. A generated card.glb and a loading page do not prove that the card reads well on a phone. Text can mirror on the back, controls can crop, and shimmer can bury the subject. For a one-off collectible, manual inspection is reasonable. For a batch of 100 character cards, this becomes a production job with asset review, browser checks, and Blender-version control.
The project is active, while release discipline is still thin
The repository had 1,844 stars, 4 open issues and pull requests, and a last push on September 22, 2026. That is current activity, and the English README makes the Chinese-first project usable for readers outside its primary audience. The included verification document is more precise than many creative-code projects about stale artifacts and route-specific checks.
There is no tagged release, no CI workflow, and our only fresh test run ended 6 to 1. Those facts place it closer to a fast-moving skill you inspect before each job than a pinned media tool you can quietly add to a production line. Its output concept is unusually practical. Its environment story needs one more pass before the one-command promise holds on a clean machine.

