frontend-slides trades a build step for an agent, and that is the whole trade
Create beautiful slides on the web using a coding agent's frontend skills.
At a glance
- What is it?
- frontend-slides is a skill file, not an application: it makes a coding agent write your presentation as a single HTML file with the CSS and JavaScript inline, so there is no npm, no bundler and no framework. The interesting part is how it decides what your deck should look like, which is three previews and a choice.
- Who is it for?
- Use frontend-slides if you cannot describe a design aesthetic in words and you want a deck you can hand-edit afterwards without a build step. Do not use it if you do not have a coding agent, since the skill does nothing without one.
- 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 143 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 November 13, 2026, and from our analysis. They are not legal advice.
Star history
- zarazhangrui/frontend-slides32,300 ★ · +5,813
| Repository | 2026-07-28 | 2026-11-13 |
|---|---|---|
| zarazhangrui/frontend-slides | 26.5k | 32.3k |
5,813 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
The deliverable is one HTML file and nothing else
The first claim on the feature list is zero dependencies, and it is specific: single HTML files with inline CSS and JavaScript. No npm, no build tools, no frameworks.
That constraint is the product. A deck produced this way is one file you can email, drop on any static host or open from disk, and it keeps working years later because there is no dependency tree to resolve. The README backs the claim with two further details: the output is fixed at a 16:9 aspect ratio, and the code is well commented so you can customise it.
Accessibility is named alongside production quality in the same line, which is unusual for a template generator and worth holding the project to.
Three scripts travel with the skill and are copied into place on manual install: scripts/extract-pptx.py for the PowerPoint path, scripts/deploy.sh and scripts/export-pdf.sh.
Three previews before the first slide is written
The core idea is described as a show, don't tell approach. Rather than asking you to describe your aesthetic preferences in words, the skill generates visual previews and lets you pick from what you see.
For a new presentation the sequence is five steps. It asks about your content, which is slides, messages and images. It then generates three visual style previews to compare, inferring the vibe from your brief unless you already named a style. You pick a direction, it builds the full deck in that style, and it opens the result in your browser.
Converting an existing PowerPoint is four steps and adds a confirmation gate. It extracts all text, images and notes, shows you what it extracted for confirmation, lets you choose a style, and then generates the HTML presentation with your original assets.
That confirmation step is the one that matters in practice. A silent extraction is how you end up with a deck that is missing the speaker notes.
The short repository form can make Claude Code try SSH
Installation runs through a custom marketplace source, and the README is emphatic about how to do it. Run these as two separate Claude Code messages. Do not paste both lines into the prompt at once.
/plugin marketplace add https://github.com/zarazhangrui/frontend-slidesAfter that finishes:
/plugin install frontend-slides@frontend-slidesThen use it by typing /frontend-slides:frontend-slides. The doubled name is not a typo. Claude Code namespaces plugin-installed skills as plugin-name and skill-name, which is why the same skill is invoked differently depending on how it was installed.
The URL is the other trap. Use the HTTPS form. The shorter zarazhangrui/frontend-slides form may make Claude Code attempt SSH, which fails if GitHub is not already in your known_hosts file. That is a small detail that turns into an afternoon for anyone who does not read past the first code block.
Manual install copies five files and a scripts folder
The second route bypasses the plugin system entirely and drops the files into the Claude Code skills directory:
mkdir -p ~/.claude/skills/frontend-slides/scripts
cp SKILL.md STYLE_PRESETS.md viewport-base.css html-template.md animation-patterns.md ~/.claude/skills/frontend-slides/
cp -R bold-template-pack ~/.claude/skills/frontend-slides/
cp scripts/extract-pptx.py scripts/deploy.sh scripts/export-pdf.sh ~/.claude/skills/frontend-slides/scripts/Or clone straight into place:
git clone https://github.com/zarazhangrui/frontend-slides.git ~/.claude/skills/frontend-slidesA standalone skill installed this way is not namespaced, so the command is /frontend-slides and not /frontend-slides:frontend-slides. Same skill, different invocation, and the README says so explicitly.
For other agents the answer is looser. Codex, Kimi Code, OpenCode and Gemini CLI are named as able to use the same core skill, and the instruction is simply to hand the agent the repository link and ask it to use the Frontend Slides skill.
Thirty-four bold templates load in three stages
Twelve presets ship in STYLE_PRESETS.md, grouped by theme. The dark set is Bold Signal, Electric Studio, Creative Voltage and Dark Botanical. The light set is Notebook Tabs, Pastel Geometry, Split Pastel and Vintage Editorial. The specialty set is Neon Cyber, Terminal Green, Swiss Modern and Paper & Ink.
Alongside them is a pack of 34 optional design systems from beautiful-html-templates, including Neo-Grid Bold, Editorial Tri-Tone, Creative Mode, Broadside, Signal and Vellum. The loading strategy is the interesting part, and the README describes it in detail.
The preview set is always three things: one safe preset from STYLE_PRESETS.md, at least one bold template option read from bold-template-pack/selection-index.json, and one wildcard that is either another bold template or a self-generated custom design. After that, the agent reads the compact index, loads only the shortlisted candidates' small preview.md cards for title-slide previews, and loads the full design.md for exactly one bold template, and only after the user picks it.
Both releases were restructurings rather than features
There are two releases: v2.0.0 is a restructuring, and v2.1.0 adds the bold templates alongside agent-neutral packaging.
v2.0.0, Progressive Disclosure Restructure, was published on 2026-03-04. v2.1.0, Bold Templates and Agent-Neutral Packaging, followed on 2026-05-26.
Read together they describe a project that spent its recent history making itself smaller to load and less tied to one agent. Progressive disclosure is the technique in the style discovery section: a compact index first, small preview cards next, the full design file last and only once. Agent-neutral packaging is the move that made the skill readable by anything with filesystem and shell access.
The repository root matches that shape: .claude-plugin/ and plugins/ for the Claude Code packaging, SKILL.md as the entry point, then STYLE_PRESETS.md, viewport-base.css, html-template.md, animation-patterns.md, the bold-template-pack directory and scripts. The last push was on 2026-06-23 and the licence is MIT.
The agent is the dependency, and the README says so
This is a prompt plus a directory of files, which means the failure modes are not the usual ones. Nothing here can be run without something that can read a repository and act on it.
The README draws the line explicitly. If the agent can read GitHub repositories or browse files, it should start from SKILL.md and load only the support files it needs, which are STYLE_PRESETS.md, viewport-base.css, html-template.md, animation-patterns.md, bold-template-pack and scripts. Some agents can install the skill for you if they have filesystem access and a known local skills directory. If they do not, they can still follow SKILL.md for the current session.
What the plugin adds is narrow, and the README is honest about it. The Claude Code plugin provides the marketplace-source install flow and the /frontend-slides:frontend-slides command surface. Other agents usually do not use that command surface at all, which means their install path is the manual one and their invocation is a request in prose.
Editorial conclusion
Use frontend-slides if you cannot describe a design aesthetic in words and you want a deck you can hand-edit afterwards without a build step. Do not use it if you do not have a coding agent, since the skill does nothing without one. Before you start, read the install section closely: the short repository form can make Claude Code attempt SSH, and the HTTPS URL is the one the README asks for. Then decide which of the three preview options you actually want, since only the bold template you pick has its full design.md loaded.
Frequently asked questions
What is the front-end slide skill?
It is a skill for coding agents that creates HTML presentations, either from scratch or by converting PowerPoint files. It is packaged as a Claude Code plugin, and the core SKILL.md can be read by other coding agents that have filesystem and shell access.
How do I install frontend-slides in Claude Code?
Run /plugin marketplace add https://github.com/zarazhangrui/frontend-slides, wait for it to finish, then run /plugin install frontend-slides@frontend-slides as a second separate message. Use the HTTPS URL, because the short zarazhangrui/frontend-slides form may make Claude Code attempt SSH and fail if GitHub is not in your known_hosts file.
What output does frontend-slides produce?
Single HTML files with inline CSS and JavaScript, at a fixed 16:9 aspect ratio, with no npm packages, no build step and no framework. The code is commented so you can customise it, and accessibility is named as a goal of the output.
Can I use frontend-slides without Claude Code?
Yes. Agents such as Codex, Kimi Code, OpenCode and Gemini CLI can read the core SKILL.md and load the support files it references, or follow SKILL.md for the current session. The README notes that the plugin install flow and the namespaced /frontend-slides:frontend-slides command are specific to Claude Code.
Official sources
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.
[](https://hysenlabs.com/projects/zarazhangrui-frontend-slides)Star history chart for your README
[](https://hysenlabs.com/projects/zarazhangrui-frontend-slides)Was this useful?