Create presentation slide decks as a single HTML file with the widget aesthetic system. All slides live in one document as sections, sharing one theme. Rendered as a widget in chat. Optionally deploy as a standalone URL. No build tools or frameworks required. Triggers include "create slides", "make a presentation", "build a deck", "HTML slides", "slide deck", "quick presentation".
Published by rebyteai
Runs in the cloud
No local installation
Dependencies pre-installed
Ready to run instantly
Secure VM environment
Isolated per task
Works on any device
Desktop, tablet, or phone
Create presentations as pure HTML. No build tools, no frameworks — just HTML, CSS, and the widget aesthetic system.
How it works: The entire presentation is a single HTML file output as a widget code block. All slides are <section> elements inside one document, sharing the same theme (aesthetic, fonts, CSS). The frontend renders the widget inline in chat with built-in navigation. This is the default and primary output mode — no CLI tools needed.
Deploy is optional. Only deploy to rebyte.pro when the user explicitly asks for a shareable URL. See references/deploy.md.
IMPORTANT: This skill is designed for non-technical users.
npm run dev: Don't start dev servers and show the output. Export/build instead.IMPORTANT: All API requests require authentication. Get your auth token and API URL by running:
AUTH_TOKEN=$(/home/user/.local/bin/rebyte-auth)
API_URL=$(python3 -c "import json; print(json.load(open('/home/user/.rebyte.ai/auth.json'))['sandbox']['relay_url'])")
Include the token in all API requests as a Bearer token, and use $API_URL as the base for all API endpoints.
Directory structure:
SKILL_DIR: The directory containing this SKILL.md/code/ (where presentation projects are created)Pick ONE aesthetic. Set data-aesthetic="name" on <html>. The frontend resolves to actual colors — never hardcode hex colors.
| Aesthetic | Feel | Best for |
|---|---|---|
editorial |
Serif, generous whitespace, earth tones + gold | Keynotes, narratives |
blueprint |
Technical drawing, slate/blue palette | Architecture, system talks |
paper-ink |
Warm cream, terracotta/sage | Tutorials, creative pitches |
mono-terminal |
Green/amber on dark, CRT feel | Technical demos |
data-dense |
Tight spacing, maximum information | Data presentations |
warm |
Peach/cream, friendly | General purpose |
dracula |
Purple-heavy, Dracula IDE scheme | Developer talks |
nord |
Cool arctic blues, minimalist | Clean, minimal decks |
Constrained aesthetics (editorial, blueprint, paper-ink, mono-terminal) produce more distinctive results.
Pick ONE font pair. Set data-font="name" on <html>.
| Name | Body font | Code font | Voice |
|---|---|---|---|
dm-sans |
DM Sans | Fira Code | Clean, modern |
instrument-serif |
Instrument Serif | JetBrains Mono | Literary, editorial |
ibm-plex |
IBM Plex Sans | IBM Plex Mono | Technical, precise |
bricolage |
Bricolage Grotesque | Fragment Mono | Bold, contemporary |
jakarta |
Plus Jakarta Sans | Azeret Mono | Friendly, rounded |
outfit |
Outfit | Space Mono | Geometric, clean |
sora |
Sora | IBM Plex Mono | Modern, geometric |
crimson-pro |
Crimson Pro | Noto Sans Mono | Classic serif |
fraunces |
Fraunces | Source Code Pro | Warm, ornamental |
red-hat |
Red Hat Display | Red Hat Mono | Distinctive |
libre-franklin |
Libre Franklin | Inconsolata | Neutral, versatile |
playfair |
Playfair Display | Roboto Mono | Elegant, high-contrast |
Recommended pairings:
instrument-serif, crimson-pro, playfair, frauncesibm-plex, dm-sans, soracrimson-pro, fraunces, libre-franklinibm-plexibm-plex, dm-sans, libre-franklinNEVER use Inter, Roboto, or Arial.
Always use these. NEVER hardcode colors.
| Variable | Purpose |
|---|---|
--widget-bg-primary |
Slide background |
--widget-bg-secondary |
Card background |
--widget-bg-tertiary |
Code blocks, inputs |
--widget-text-primary |
Headings, body |
--widget-text-secondary |
Descriptions |
--widget-text-muted |
Captions, labels |
--widget-accent |
Highlights, decorations |
--widget-accent-fg |
Accent text color |
--widget-accent-text |
Text on accent bg |
--widget-border |
Borders |
--widget-border-radius |
Border radius (12px) |
--widget-shadow-sm / --widget-shadow-md |
Shadows |
--widget-font-sans |
Body font |
--widget-font-mono |
Code, data values |
--widget-chart-1 … --widget-chart-8 |
Chart colors |
The entire presentation is one widget code block containing all slides as <section> elements.
```widget
<html data-aesthetic="editorial" data-font="instrument-serif" data-slides="true">
<head>...</head>
<body>
<div class="deck" id="deck">
<section class="slide slide--title">...</section>
<section class="slide slide--content">...</section>
<section class="slide slide--closing">...</section>
</div>
<script>/* navigation engine */</script>
</body>
</html>
```
Do NOT save as files. Output the widget directly in your response.
Size limit: Under 5 MB.
One HTML document, one theme, all slides as sections. See references/css-patterns.md for the complete CSS, navigation JS, and layout classes. See references/slide-template.md for the base template.
<!DOCTYPE html>
<html lang="en" data-aesthetic="editorial" data-font="instrument-serif" data-slides="true">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://fonts.googleapis.com/css2?family=...&display=swap" rel="stylesheet">
<style>
:root { /* Fallback CSS vars matching chosen aesthetic */ }
/* Slide engine + layout classes from css-patterns.md */
</style>
</head>
<body tabindex="0">
<div class="slide-progress" id="progress"></div>
<div class="deck" id="deck">
<section class="slide slide--title">...</section>
<section class="slide slide--content">...</section>
<section class="slide slide--closing">...</section>
</div>
<div class="slide-controls">
<button class="ctrl-btn" id="prev-btn">◀</button>
<span class="slide-counter" id="counter">1 / N</span>
<button class="ctrl-btn" id="next-btn">▶</button>
</div>
<script>/* Navigation engine from css-patterns.md */</script>
</body>
</html>
CRITICAL rules:
<link> for Google Fonts (needed for standalone rendering):root matching your chosen aesthetictabindex="0" on <body> for keyboard focus in iframereferences/css-patterns.mdSet data-transition on .deck: slide (default), fade, none
See references/deploy.md. Save the widget HTML as index.html and run rebyte deploy. Do NOT attempt deployment unless the user explicitly requests a shareable URL.
Use these layout classes on <section class="slide slide--TYPE">:
| Class | When | Key elements |
|---|---|---|
slide--title |
First slide | .label, h1 (with <em> for accent), .subtitle, .divider |
slide--section |
Section divider | .section-number, h2 |
slide--content |
Main slides | h2, ul > li |
slide--two-col |
Comparisons | h2, .col-grid > .col-card (.accent-bar, h3, p) |
slide--stat |
Key metrics | .label, .stat-grid > .stat-item (.big-number, .stat-label) |
slide--quote |
Citations | .quote-mark, blockquote, .attribution |
slide--code |
Technical | h2, pre (.keyword, .string, .comment) |
slide--closing |
Last slide | h2, .cta, .footer-text |
Title h1: 80px weight 400 line-height 1.1
Section h2: 64px weight 400 line-height 1.2
Content h2: 52px weight 400 line-height 1.2
Card h3: 28px weight 400
Body/bullets: 26px weight 400 line-height 1.7
Subtitle: 28px secondary color
Big number: 96px monospace accent color
Label: 14px monospace uppercase letter-spacing 0.15em
Caption: 16px muted color
| Library | CDN URL | Use for |
|---|---|---|
| Chart.js 4 | https://cdn.jsdelivr.net/npm/chart.js@4.4.1 |
Charts |
| D3 v7 | https://cdn.jsdelivr.net/npm/d3@7 |
Custom visualizations |
| Mermaid | https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js |
Diagrams |
| anime.js | https://cdn.jsdelivr.net/npm/animejs@3.2.2/lib/anime.min.js |
Animations |
<em> in headings for italic accent wordsvar(--widget-font-mono)var(--widget-*) — no hardcoded hex| File | Description |
|---|---|
references/slide-template.md |
Base HTML template for slides |
references/css-patterns.md |
CSS layout classes and navigation JS |
references/deploy.md |
How to deploy slides as a standalone URL |
Everyone else asks you to install skills locally. On Rebyte, just click Run. Works from any device — even your phone. No CLI, no terminal, no configuration.
Claude Code
Gemini CLI
Codex
Cursor, Windsurf, Amp
Generate images from text prompts or edit existing images using Google Nano Banana 2 (Gemini 3.1 Flash image generation) via Rebyte data API. Supports multi-size output (512px–4K), improved text rendering, and multi-image input. Use for text-to-image generation or image-to-image editing/enhancement. Triggers include "generate image", "create image", "make a picture", "draw", "illustrate", "image of", "picture of", "edit image", "modify image", "enhance image", "style transfer", "nano banana".
Create and refine visual designs — logos, brand assets, UI mockups, illustrations, interactive artifacts — using AI image generation, design intelligence, and impeccable.style design skills for professional polish. Use when user wants to design a logo, create brand assets, build UI mockups, generate illustrations, or create and refine interactive visual artifacts.
Conduct enterprise-grade research with multi-source synthesis, citation tracking, and verification. Use when user needs comprehensive analysis requiring 10+ sources, verified claims, or comparison of approaches. Triggers include "deep research", "comprehensive analysis", "research report", "compare X vs Y", or "analyze trends". Do NOT use for simple lookups, debugging, or questions answerable with 1-2 searches.
Build stylish, Typeform-like multi-step forms and surveys using the Rebyte Forms library (Composer API). Outputs standalone HTML files. Triggers include "create a form", "build a survey", "make a questionnaire", "feedback form", "contact form", "signup form", "onboarding flow", "multi-step form", "typeform-style", "data collection form". Do NOT use for simple single-field inputs or backend form processing.
rebyte.ai — The only platform where you can run AI agent skills directly in the cloud
No downloads. No configuration. Just sign in and start using AI skills immediately.
Use this skill in Agent Computer — your shared cloud desktop with all skills pre-installed. Join Moltbook to connect with other teams.