nexu-io/open-design/plugins/_official/examples/fs-electric-studio/SKILL.md
fs-electric-studio
OpenDesign as an enterprise design platform: a buyer-forwardable proposal for a design-org's economic buyer — pain, value, ROI, rollout. Built as a decision-grade B2B sales deck for economic buyer, design VP, procurement.
- Source repository stars
- 91,167
- Declared platforms
- 0
- Static risk flags
- 0
- Last source update
- 2026-08-25
- Source checked
- 2026-08-25
Decision brief
What it does: where it fits
Bold, clean, professional, high-contrast split-panel decks. Theme locked to the Electric Studio preset (section 2 of STYLEPRESETS.md) from the MIT-licensed zarazhangrui/frontend-slides.
Not for
- Tasks that require unconfirmed production actions or broad system permissions.
- Environments where the pinned source and install steps cannot be inspected.
Compatibility matrix
Platform support, with evidence labels
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
Inspect first. Install second.
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/nexu-io/open-design --skill "plugins/_official/examples/fs-electric-studio"Inspect the Agent Skill "fs-electric-studio" from https://github.com/nexu-io/open-design/blob/edfa6b5f447e95cb120eae030f03baba00dc34de/plugins/_official/examples/fs-electric-studio/SKILL.md at commit edfa6b5f447e95cb120eae030f03baba00dc34de. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
What the source asks the agent to do
- 01
Fixed 16:9 stage — NON-NEGOTIABLE scaling system
Author every slide on a fixed 1920×1080 canvas: .deck-viewport (fills the window) wraps .deck-stage (1920×1080, transform-origin: 0 0).
Author every slide on a fixed 1920×1080 canvas: .deck-viewport (fills the window) wraps .deck-stage (1920×1080, transform-origin: 0 0).JavaScript scales the whole stage uniformly: factor = min(innerWidth/1920, innerHeight/1080), then translate(x, y) scale(factor) to center with letterbox/pillarbox; re-run on resize.Never reflow content per device; no responsive breakpoints inside slides; all measurements are fixed px at design size. - 02
Locked design tokens (:root — complete list, no additions)
Forbidden: any other hue, gradients, purple/indigo (6366f1), warm accents, photography, illustrations, drop shadows, rounded hero cards. The palette is exactly white / cobalt / near-black plus their soft alphas.
Forbidden: any other hue, gradients, purple/indigo (6366f1), warm accents, photography, illustrations, drop shadows, rounded hero cards. The palette is exactly white / cobalt / near-black plus their soft alphas. - 03
Typography (all Manrope, Google Fonts weights 400/500/800)
Display / H2 — Manrope 800, tight negative letter-spacing (-0.025em to -0.035em), line-height ≤ 1.08. Title 152px, H2 60–88px. A terminal period in --accent-blue (.) is a signature flourish.
Display / H2 — Manrope 800, tight negative letter-spacing (-0.025em to -0.035em), line-height ≤ 1.08. Title 152px, H2 60–88px. A terminal period in --accent-blue (.) is a signature flourish.Quote hero — Manrope 800 at 92px with an oversized cobalt “ mark (220px): quote typography is the deck's hero visual.Kicker — 22px, 800, uppercase, letter-spacing: 0.34em, cobalt on white / white on cobalt. - 04
Locked layout system — vertical split panels
Every slide is the same shell:
White above, cobalt 4361ee below — always. Vary only the split ratio per master; never side-by-side splits, never blue-over-white.Edge bar (.edge-bar, 14px, --bg-dark) sits on the seam of every slide; use .edge-bar.light (white) only when a slide reads as cobalt-dominant and needs the inverse.Brand marks in corners are the chrome (no breadcrumbs, no baseline rule): top-left cobalt chip (16px square) + wordmark; top-right section label; bottom-left deck label; bottom-right NN / NN page mark. Marks over the wh… - 05
Master pages (compose decks from these; all present in the seed)
Review the “Master pages (compose decks from these; all present in the seed)” section in the pinned source before continuing.
Review and apply the “Master pages (compose decks from these; all present in the seed)” source section.
Permission review
Static risk signals and limitations
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
Why each signal appears
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 80/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 91,167 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Provenance and original SKILL.md
- Repository
- nexu-io/open-design
- Skill path
- plugins/_official/examples/fs-electric-studio/SKILL.md
- Commit
- edfa6b5f447e95cb120eae030f03baba00dc34de
- License
- Apache-2.0
- Collected
- 2026-08-25
- Default branch
- main
View the original SKILL.md
Electric Studio · 钴蓝工作室
Bold, clean, professional, high-contrast split-panel decks. Theme locked to the Electric Studio preset (section 2 of STYLE_PRESETS.md) from the MIT-licensed zarazhangrui/frontend-slides.
Start from example.html in this plugin folder. It is the proven seed: keep its stage CSS (full viewport-base.css contents), the split-panel shell, the corner-marks chrome, the :root tokens, and the entire SlidePresentation controller script verbatim — replace slide content only. Do not rewrite the design; do not introduce any color or font outside this spec.
Locked design tokens (:root — complete list, no additions)
:root {
--bg-dark: #0a0a0a; /* edge bar, dark text, stage letterbox */
--bg-white: #ffffff; /* upper panel */
--accent-blue: #4361ee; /* cobalt panel, chips, bars, numerals */
--text-dark: #0a0a0a;
--text-light: #ffffff;
--text-dark-soft: rgba(10, 10, 10, 0.58);
--text-light-soft: rgba(255, 255, 255, 0.72);
--line-dark: rgba(10, 10, 10, 0.14);
--line-light: rgba(255, 255, 255, 0.28);
--blue-soft: rgba(67, 97, 238, 0.10); /* tick boxes, outline bar fills */
--stage-bg: var(--bg-dark);
--slide-bg: var(--bg-white);
--font: 'Manrope', sans-serif; /* the ONLY typeface */
--title-size: 152px;
--h2-size: 88px;
--lede-size: 33px;
--body-size: 27px;
--slide-pad-x: 110px;
--edge-bar-h: 14px;
--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
--duration-normal: 0.7s;
}
Forbidden: any other hue, gradients, purple/indigo (#6366f1), warm accents, photography, illustrations, drop shadows, rounded hero cards. The palette is exactly white / cobalt / near-black plus their soft alphas.
Typography (all Manrope, Google Fonts weights 400/500/800)
- Display / H2 — Manrope 800, tight negative letter-spacing (
-0.025emto-0.035em), line-height ≤ 1.08. Title ~152px, H2 60–88px. A terminal period in--accent-blue(<span class="blue">.</span>) is a signature flourish. - Quote hero — Manrope 800 at ~92px with an oversized cobalt
“mark (~220px): quote typography is the deck's hero visual. - Kicker — 22px, 800, uppercase,
letter-spacing: 0.34em, cobalt on white / white on cobalt. - Body / lede — 400/500, 25–33px. Support copy on the white panel uses
--text-dark-soft; body copy on the cobalt panel stays full--text-lightfor WCAG AA contrast (the soft light alpha is reserved for bold uppercase chrome: marks, hints, separators). - Marks — 19px, 800, uppercase,
letter-spacing: 0.22em. - Never substitute Inter, Roboto, Arial, serifs, or any second typeface.
Locked layout system — vertical split panels
Every slide is the same shell:
<section class="slide s-<master>">
<div class="split">
<div class="panel panel-white panel-pad"> … </div>
<div class="edge-bar"></div> <!-- 14px #0a0a0a accent bar on the panel seam -->
<div class="panel panel-blue panel-pad"> … </div>
</div>
<div class="mark mark-tl dark"><span class="chip"></span>Brand</div>
<div class="mark mark-tr dark"><span class="soft">Section</span></div>
<div class="mark mark-bl light"><span class="soft">Deck label</span></div>
<div class="mark mark-br light">NN / NN</div>
</section>
- White above, cobalt #4361ee below — always. Vary only the split ratio per master; never side-by-side splits, never blue-over-white.
- Edge bar (
.edge-bar, 14px,--bg-dark) sits on the seam of every slide; use.edge-bar.light(white) only when a slide reads as cobalt-dominant and needs the inverse. - Brand marks in corners are the chrome (no breadcrumbs, no baseline rule): top-left cobalt chip (16px square) + wordmark; top-right section label; bottom-left deck label; bottom-right
NN / NNpage mark. Marks over the white panel use.dark, marks over the cobalt panel use.light. - Horizontal padding is
--slide-pad-x(110px) on both panels; spacing stays confident and restrained — generous margins, no cramming.
Master pages (compose decks from these; all present in the seed)
| Master | Split | Content |
|---|---|---|
s-title | 50/50 | Kicker + giant statement title on white; lede + meta row on blue |
s-agenda | 348px / rest | H2 on white; numbered hairline rows (--line-light) on blue with idx + hint |
s-divider | 150px / rest | Empty white strip; giant outlined number (-webkit-text-stroke: 3px var(--bg-white)) + label on cobalt |
s-bullets | deep / 240px | Kicker + H2 + ≤3 tick points (cobalt-bordered .tick with inline-SVG check) on white; one bold takeaway on blue |
s-stat | deep / 300px | Oversized cobalt number (~400px, 800) on white; label + note on blue |
s-quote | deep / 220px | Cobalt “ + 92px statement quote on white; attribution on blue |
s-compare | 50/50 | The split IS the contrast: "their way" on white vs "our way" on cobalt, dash-topped list items |
s-grid | 300px / rest | H2 on white; 2×2 .gcard grid (2px --line-light borders) on cobalt |
s-chart | deep / 200px | Pure-CSS bar chart on white: cobalt bars (.solid fill or --blue-soft + cobalt border), scaleY(0)→1 entrance; takeaway on blue |
s-close | 150px / rest | Cobalt-dominant statement ("Let's make something electric.") + inline-SVG contact links |
Fixed 16:9 stage — NON-NEGOTIABLE scaling system
- Author every slide on a fixed 1920×1080 canvas:
.deck-viewport(fills the window) wraps.deck-stage(1920×1080,transform-origin: 0 0). - JavaScript scales the whole stage uniformly:
factor = min(innerWidth/1920, innerHeight/1080), thentranslate(x, y) scale(factor)to center with letterbox/pillarbox; re-run onresize. - Never reflow content per device; no responsive breakpoints inside slides; all measurements are fixed px at design size.
- Keep the FULL viewport-base.css block from the seed (stage, slide stacking, print styles,
prefers-reduced-motion). - Slide switching toggles
.active/.visible(visibility/opacity/pointer-events) — neverdisplay: none. - Navigation runtime (keep the seed's
SlidePresentationcontroller verbatim):←/→/↑/↓/Space/PageUp/PageDown/Home/End, debounced wheel (~650ms), touch swipe (≥40px),#/<index>hash routing with deep-link restore, page counter pill in.deck-controlsfixed outside the scaled stage.
Motion
- Entrances only:
.revealelements transition when the slide gains.visible; stagger viatransition-delayin ~0.1s steps. - One signature easing:
cubic-bezier(0.16, 1, 0.3, 1). Animate onlytransformandopacity. Chart bars enter viascaleY. prefers-reduced-motionsupport is mandatory (in the base CSS).
Output contract
- Single self-contained
.html: all CSS/JS inline, zero build, zero external JS, no CDN scripts. Google Fonts link for Manrope is the only external reference. - Icons are inline SVG (stroke
#4361eeon white,#ffffffon cobalt). Charts are pure CSS. No remote images. - No scrolling, no overflow: split content into more slides instead of shrinking type. Low-density speaker-led decks: one idea per slide, 1–3 bullets. High-density reading-first decks: structured grids, max 4–6 cards.
- Comment every section:
/* === SECTION NAME === */. Never negate CSS functions directly (-clamp()is silently ignored) — usecalc(-1 * clamp(...)).
Attribution
Theme, fixed-stage model, and workflow come from the upstream MIT-licensed zarazhangrui/frontend-slides (© 2025 Zara Zhang), Electric Studio preset (STYLE_PRESETS.md section 2). The LICENSE file ships in this plugin folder; keep it in place when redistributing.
Frequently asked questions
What to verify before installation and use
What does the fs-electric-studio source document cover?
Bold, clean, professional, high-contrast split-panel decks. Theme locked to the Electric Studio preset (section 2 of STYLEPRESETS.md) from the MIT-licensed zarazhangrui/frontend-slides.
How do I install fs-electric-studio?
The source record exposes this install command: npx skills add https://github.com/nexu-io/open-design --skill "plugins/_official/examples/fs-electric-studio". Inspect the command and pinned source before running it.
Alternatives
Compare before choosing
JasonColapietro/suede-creator-skills
suede-prospecting
Suede-owned prospecting and qualification discipline. Use when defining an ICP, sourcing and enriching a bounded lead list, finding early adopters or design partners, scoring account fit, or documenting disqualification evidence. NOT FOR: sending outreach (use suede-cold-email), changing CRM routing (use suede-revops), or profiling competitors instead of prospects (use suede-competitor-profiling).
yonatangross/orchestkit
brainstorm
Design exploration using parallel agents through a 7-phase process: topic analysis, memory context, divergent ideation (10+ ideas), feasibility filtering, evaluation with devil's advocate scoring (0-10 across 7 dimensions), synthesis of top approaches, and trade-off comparison. Supports open exploration, constrained design, comparison, quick ideation, and iterative optimization modes. Use when brainstorming ideas, exploring solutions, or comparing alternatives.
objectstack-ai/objectstack
objectstack-platform
Bootstrap, configure, extend, and operate ObjectStack runtimes. Covers project setup (`defineStack`, drivers, adapters, scaffolding), plugin and service development (PluginContext, DI, kernel hooks like `kernel:ready`), and operations (CLI commands, migrations, deployment, test harnesses via LiteKernel). Use when the user is writing `objectstack.config.ts`, building a plugin or driver, wiring a framework adapter, running `os` CLI commands, or planning deployment. Do not use for data schema desig
coreyhaines31/marketingskills
prospecting
When the user wants to find, qualify, and build a list of prospects to reach out to — across B2B SaaS, general B2B, or local small businesses. Also use when the user mentions "prospecting," "build a prospect list," "find prospects," "find leads," "lead gen list," "find SaaS companies that," "find B2B companies," "find local businesses," "ICP-fit accounts," "who should we go after," "outbound list," "target account list," "find clients near me," "businesses without websites," "prospect research,"