nexu-io/open-design

fs-notebook-tabs

A computer-science capstone: an on-device ML keyboard that predicts next words privately — problem, method, evaluation, and defense answers. Built as a decision-grade coursework defense deck for professor, defense committee.

80Collecting
See how to use itView GitHub source
npx skills add https://github.com/nexu-io/open-design --skill "plugins/_official/examples/fs-notebook-tabs"
Automated source guideDesignDeep source

Source checked Jul 28, 2026·Refresh due Oct 26, 2026

Reorganized from the pinned upstream SKILL.md

Source-grounded design guide: fs-notebook-tabs

A theme-locked deck plugin derived from the MIT-licensed zarazhangrui/frontend-slides "Notebook Tabs" style preset (STYLEPRESETS.md section 5). The whole deck reads as one physical, editorially typeset notebook: every slide is a cream paper page floating on a dark desk, with a c…

npx skills add https://github.com/nexu-io/open-design --skill "plugins/_official/examples/fs-notebook-tabs"
Check the pinned source

The pinned source contains enough sections and task detail for a source-grounded deep guide; automated content is still not an independent test.

952 source words · 6 usable sections

Design outputs

  • Single self-contained .html: all CSS and JS inline, zero build step, zero external JS libraries or CDN scripts (no Chart.js, no mermaid — pure CSS/SVG only). Icons are inline SVG. No remote images. The only allowed exte…
  • Comment every block: / === SECTION NAME === /.
  • From example.html, change only the content (text, section/tab names, data values, icon paths). The tokens, paper device, tabs, chrome, and controller script are the product — do not rewrite them, and never introduce col…

Design process

Read fs-notebook-tabs through these 5 source sections

Sections are extracted automatically from the pinned SKILL.md and link back to the source.

01

Fixed 16:9 stage (locked scaling system)

Every deck is authored on a fixed 1920×1080 canvas: .deck-viewport (fills the window) wraps .deck-stage (1920×1080, transform-origin: 0 0).

SKILL.md · Fixed 16:9 stage (locked scaling system)
Every deck is authored 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. This is the viewport-base.css system…Never reflow slide content per device. No responsive breakpoints inside slides. All measurements are fixed px at the 1920×1080 design size (the upstream preset's clamp() tab sizing is superseded by stage scaling — use f…
02

Design tokens (locked — reproduce exactly, never substitute)

Fonts load via one Google Fonts @import (Bodoni Moda ital,wght 0,400/0,700/1,400 + DM Sans 400/500/700). Forbidden: any other font, Inter/Roboto/Arial/system display fonts, any color outside the tokens above, gradients as decoration, indigo 6366f1, dark-glassmorphism panels.

SKILL.md · Design tokens (locked — reproduce exactly, never substitute)
Fonts load via one Google Fonts @import (Bodoni Moda ital,wght 0,400/0,700/1,400 + DM Sans 400/500/700). Forbidden: any other font, Inter/Roboto/Arial/system display fonts, any color outside the tokens above, gradients…
03

Signature devices (every slide carries all of them)

1. Paper card .paper — absolutely positioned by the --paper- insets, border-radius: 8px, layered shadow (0 2px 4px + 0 18px 50px dark drops + a 1px inner white highlight), faint 44px-pitch ruled-line grain via a layered linear-gradient, z-index: 1. 2. Binder holes .holes — a lef…

SKILL.md · Signature devices (every slide carries all of them)
Paper card .paper — absolutely positioned by the --paper- insets, border-radius: 8px, layered shadow (0 2px 4px + 0 18px 50px dark drops + a 1px inner white highlight), faint 44px-pitch ruled-line grain via a layered li…Binder holes .holes — a left-margin flex column of 10 punched circles (26px, background: var(--bg-outer), inset dark shadow + 1px white bottom highlight), inside the paper at left: 38px.Margin rule .margin-rule — a 1px vertical line at left: 92px in var(--tab-3) at 0.55 opacity, echoing a real notebook's red margin line.
04

Layout vocabulary (compose every deck from these masters)

cover (kicker with color chip + giant Bodoni display with one italic word + swatch row), contents (index rows: color chip + roman numeral + dotted leaders + page no.), section divider (430px outline-stroke Bodoni numeral + color bar + h2), bullets (max 3 points: colored circular…

SKILL.md · Layout vocabulary (compose every deck from these masters)
cover (kicker with color chip + giant Bodoni display with one italic word + swatch row), contents (index rows: color chip + roman numeral + dotted leaders + page no.), section divider (430px outline-stroke Bodoni numera…
05

Motion

Entrances only via .reveal elements transitioning when the slide gains .visible; stagger with transition-delay steps of 0.1s (.d1–.d6 helper classes).

SKILL.md · Motion
Entrances only via .reveal elements transitioning when the slide gains .visible; stagger with transition-delay steps of 0.1s (.d1–.d6 helper classes).One signature easing: cubic-bezier(0.16, 1, 0.3, 1). Animate only transform and opacity. Chart bars grow with transform: scaleY from transform-origin: bottom.prefers-reduced-motion support is mandatory (already in the inlined stage CSS).

SkillSignal prompt templates

Provide the task, context, and acceptance criteria

These prompts were written by SkillSignal from the source structure; they are not upstream text.

Source-grounded prompt

Use for a design task while explicitly checking the source sections.

Use fs-notebook-tabs for this design task: [task]. Inputs and constraints: [details]. Work through these pinned SKILL.md sections: “Fixed 16:9 stage (locked scaling system)”, “Design tokens (locked — reproduce exactly, never substitute)”, “Signature devices (every slide carries all of them)”, “Layout vocabulary (compose every deck from these masters)”, “Motion”. Cite the concrete requirements that shape each step, do not invent capabilities absent from the source, and verify the result against: [acceptance criteria].

Design checklist

Verify each item before delivery

The source section “Fixed 16:9 stage (locked scaling system)” has been checked.

The source section “Design tokens (locked — reproduce exactly, never substitute)” has been checked.

The source section “Signature devices (every slide carries all of them)” has been checked.

The source section “Layout vocabulary (compose every deck from these masters)” has been checked.

Source output checked: Single self-contained .html: all CSS and JS inline, zero build step, zero external JS libraries or CDN scripts (no Chart.js, no mermaid — pure CSS/SVG only). Icons are inline SVG. No remote images. The only allowed exte…

Source output checked: Comment every block: / === SECTION NAME === /.

Choose a different workflow

When another Skill is the better fit

ab-testing

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program

A separate implementation from coreyhaines31/marketingskills; compare its source, maintenance signals, and permission requirements.

Open source detail

churn-prevention

When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o

A separate implementation from coreyhaines31/marketingskills; compare its source, maintenance signals, and permission requirements.

Open source detail

design-intelligence

Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.

A separate implementation from event4u-app/agent-config; compare its source, maintenance signals, and permission requirements.

Open source detail

FAQ

What does the fs-notebook-tabs source document cover?

A theme-locked deck plugin derived from the MIT-licensed zarazhangrui/frontend-slides "Notebook Tabs" style preset (STYLEPRESETS.md section 5). The whole deck reads as one physical, editorially typeset notebook: every slide is a cream paper page floating on a dark desk, with a c…

How do I install fs-notebook-tabs?

The source record exposes this install command: npx skills add https://github.com/nexu-io/open-design --skill "plugins/_official/examples/fs-notebook-tabs". Inspect the command and pinned source before running it.

Repository stars
82,073
Repository forks
9,485
Quality
80/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

80/100
Documentation26/30
Specificity14/25
Maintenance20/20
Trust signals20/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

ab-testing by coreyhaines31

When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program

churn-prevention by coreyhaines31

When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies. Also use when the user mentions 'churn,' 'cancel flow,' 'offboarding,' 'save offer,' 'dunning,' 'failed payment recovery,' 'win-back,' 'retention,' 'exit survey,' 'pause subscription,' 'involuntary churn,' 'people keep canceling,' 'churn rate is too high,' 'how do I keep users,' or 'customers are leaving.' Use this whenever someone is losing subscribers o

design-intelligence by event4u-app

Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.

design-system-capture by event4u-app

Write and maintain DESIGN.md + PRODUCT.md — captures visual decisions and interaction patterns so design tasks stay consistent across sessions without re-scanning past work.

existing-ui-audit by event4u-app

Use BEFORE writing or editing any non-trivial UI — inventories components, design tokens, shadcn primitives, and reusable patterns into state.ui_audit. Hard gate for the ui directive set.

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 5 min

Notebook Tabs (索引笔记本)

A theme-locked deck plugin derived from the MIT-licensed zarazhangrui/frontend-slides "Notebook Tabs" style preset (STYLE_PRESETS.md section 5). The whole deck reads as one physical, editorially typeset notebook: every slide is a cream paper page floating on a dark desk, with a colorful tab index on the right fore-edge and binder holes on the left.

Start from example.html in this plugin folder. It is the proven seed: keep its stage CSS, the paper/holes/tabs device, the :root token block, and the entire SlidePresentation controller script verbatim — replace only the slide content. Do not redesign, do not introduce any color or font outside this spec.

Fixed 16:9 stage (locked scaling system)

  • Every deck is authored 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. This is the viewport-base.css system — the full file is already inlined in the seed.
  • Never reflow slide content per device. No responsive breakpoints inside slides. All measurements are fixed px at the 1920×1080 design size (the upstream preset's clamp() tab sizing is superseded by stage scaling — use fixed px).
  • Slide switching toggles .active/.visible (visibility/opacity/pointer-events) — never display: none.
  • Keyboard (////Space/PageUp/PageDown/Home/End), debounced wheel (~650ms), touch swipe (≥40px), and #/<index> hash routing with deep-link restore. The page counter lives in .deck-controls, fixed-positioned outside the scaled stage.

Design tokens (locked — reproduce exactly, never substitute)

:root {
    /* Colors */
    --bg-outer: #2d2d2d;          /* dark desk behind the notebook */
    --bg-page: #f8f6f1;           /* cream paper */
    --text-primary: #1a1a1a;
    --text-secondary: #6b6358;
    --rule: #d8d2c4;              /* hairline rules on paper */
    --tab-1: #98d4bb;             /* Mint */
    --tab-2: #c7b8ea;             /* Lavender */
    --tab-3: #f4b8c5;             /* Pink */
    --tab-4: #a8d8ea;             /* Sky */
    --tab-5: #ffe6a7;             /* Cream */
    --stage-bg: var(--bg-outer);
    --slide-bg: var(--bg-outer);

    /* Typography */
    --font-display: 'Bodoni Moda', 'Didot', serif;   /* 400/700 + italic */
    --font-body: 'DM Sans', 'Helvetica Neue', sans-serif;  /* 400/500/700 */
    --title-size: 150px;
    --h2-size: 84px;
    --subtitle-size: 30px;
    --body-size: 26px;
    --label-size: 17px;

    /* Paper geometry inside the 1920×1080 stage */
    --paper-top: 56px;
    --paper-bottom: 56px;
    --paper-left: 120px;
    --paper-right: 150px;        /* leaves room for the protruding tabs */
    --paper-pad-x: 110px;
    --paper-pad-y: 78px;

    /* Motion */
    --ease-page: cubic-bezier(0.16, 1, 0.3, 1);   /* the one signature easing */
    --duration-normal: 0.7s;
}

Fonts load via one Google Fonts @import (Bodoni Moda ital,wght 0,400/0,700/1,400 + DM Sans 400/500/700). Forbidden: any other font, Inter/Roboto/Arial/system display fonts, any color outside the tokens above, gradients as decoration, indigo #6366f1, dark-glassmorphism panels.

Signature devices (every slide carries all of them)

  1. Paper card .paper — absolutely positioned by the --paper-* insets, border-radius: 8px, layered shadow (0 2px 4px + 0 18px 50px dark drops + a 1px inner white highlight), faint 44px-pitch ruled-line grain via a layered linear-gradient, z-index: 1.
  2. Binder holes .holes — a left-margin flex column of 10 punched circles (26px, background: var(--bg-outer), inset dark shadow + 1px white bottom highlight), inside the paper at left: 38px.
  3. Margin rule .margin-rule — a 1px vertical line at left: 92px in var(--tab-3) at 0.55 opacity, echoing a real notebook's red margin line.
  4. Index tabs .tabs — a vertical column of 5 tabs on the right fore-edge, writing-mode: vertical-rl, DM Sans 700 uppercase letter-spaced, 56×158px, border-radius: 0 10px 10px 0, colored --tab-1--tab-5 in order. The column is positioned against the stage (right: calc(--paper-right - 44px)) at z-index: 0 so 12px of each tab root tucks under the paper. The current section's tab gets .on (full opacity, translateX(0), stronger shadow); inactive tabs sit at 0.82 opacity, translateX(-6px). Tab labels name the deck's sections (seed: Intro / Craft / Numbers / Plan / End) — rename to the actual sections, keep the color order.
  5. Page chrome.runhead top ("No. NN" + running title, uppercase DM Sans, hairline bottom border) and .baseline bottom (section name + "NN / total", hairline top border). Keep both on every slide.

Layout vocabulary (compose every deck from these masters)

cover (kicker with color chip + giant Bodoni display with one italic word + swatch row), contents (index rows: color chip + roman numeral + dotted leaders + page no.), section divider (430px outline-stroke Bodoni numeral + color bar + h2), bullets (max 3 points: colored circular pin with inline-SVG icon + Bodoni h3 + DM Sans support line), quote (lavender 220px quote mark + Bodoni italic 66px), big-stat (300px Bodoni number with italic unit + mint-left-border side note), CSS bar chart (scaleY-animated bars in tab colors over a solid axis), two-column comparison (plain column vs .hot column with 8px 8px 0 var(--tab-4) hard offset shadow), principle grid (2×2 cards, each with a 12px colored left edge via --edge), closing (display sign-off + underlined contact links + colophon line). Default 8-11 slides per deck; honor the requested slide count when the user picks one; split content rather than shrinking type. No scrolling, no overflow.

Motion

  • Entrances only via .reveal elements transitioning when the slide gains .visible; stagger with transition-delay steps of ~0.1s (.d1.d6 helper classes).
  • One signature easing: cubic-bezier(0.16, 1, 0.3, 1). Animate only transform and opacity. Chart bars grow with transform: scaleY from transform-origin: bottom.
  • prefers-reduced-motion support is mandatory (already in the inlined stage CSS).

Output contract

  • Single self-contained .html: all CSS and JS inline, zero build step, zero external JS libraries or CDN scripts (no Chart.js, no mermaid — pure CSS/SVG only). Icons are inline SVG. No remote images. The only allowed external reference is the Google Fonts @import.
  • Comment every block: /* === SECTION NAME === */.
  • From example.html, change only the content (text, section/tab names, data values, icon paths). The tokens, paper device, tabs, chrome, and controller script are the product — do not rewrite them, and never introduce colors or fonts outside this spec.
Skill path
plugins/_official/examples/fs-notebook-tabs/SKILL.md
Commit SHA
89d6d4ef21ba
Repository license
Apache-2.0
Data collected