Communitygithub.com

hubeiqiao/apple-bento-grid

Erstelle Apple-inspirierte Bento-Grid-Präsentationskarten für Projektstatistiken, Zeitpläne und Erfolge. Generiert eigenständige HTML-Dateien mit lückenlosen Grids, Statistik-Karten, Pill-Tags, Balkendiagrammen und dunklen Zitatkarten – optimiert für Screenshot-Export. Unterstützt sowohl helle (Apple-Signatur #f5f5f7) als auch dunkle (#000) Themes. Verwende dies, wenn der Nutzer darum bittet, Statistik-Karten, Bento-Grids, Projektübersichtskarten, Dashboard-Karten, Apple-ähnliche Präsentationslayouts, Projektzusammenfassungen, Erfolgsdarstellungen oder jede visuelle Zusammenfassung von Zahlen und Meilensteinen zu erstellen. Auch wenn der Nutzer Folien, Infografiken oder visuelle Berichte mit einer klaren Apple-Ästhetik wünscht.

Was ist apple-bento-grid?

Dieses Skill für KI-Agenten (z. B. Claude Code, Cursor, Codex) ermöglicht es, direkt aus HTML Apple-inspirierte Bento-Grid-Layouts zu generieren – ohne Design-Tools wie Figma oder Keynote. Es erstellt eigenständige HTML-Dateien mit eingebettetem CSS, die durch einen Screenshot in pixelgenaue Bilder umgewandelt werden können. Der Agent nutzt eine in der `SKILL.md` beschriebene Workflow-Anleitung: Er analysiert die Anforderungen des Nutzers, wählt ein passendes Theme (hell oder dunkel) und ein Layout aus drei Vorlagen (4-spaltig horizontal, 3-spaltig horizontal, 2-spaltig vertikal), wählt Kartentypen (z. B. Hero, Stat, Kategorie, Balkendiagramm, Zitat) aus und befüllt sie mit den Nutzerdaten. Das Skill legt großen Wert auf visuelle Dichte und ein lückenloses Grid (6px Abstand), überprüft das Ergebnis im Browser und bietet optional einen Screenshot-Export mittels Playwright an. Es ist ideal für Entwickler, die schnell hochwertige Präsentationsgrafiken für Slides, Social Media, Berichte oder Portfolios erstellen möchten.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add hubeiqiao/apple-bento-grid

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Vorschau

Aus dem Skill-README

apple-bento-grid preview

Dokumentation

Apple Bento Grid

Problem

Die Erstellung visuell ansprechender Präsentationsgrafiken erfordert normalerweise Design-Tools wie Figma oder Keynote. Dieses Skill generiert Apple-ähnliche Bento-Grid-Layouts als eigenständige HTML-Dateien, die sich per Screenshot in pixelgenaue Bilder umwandeln lassen – ganz ohne Design-Tool.

Übersicht

Generiere eigenständige HTML-Dateien, die Apple-inspirierte Bento-Kartenraster rendern. Jede Ausgabe ist eine einzelne HTML-Datei mit Inline-CSS – keine Abhängigkeiten außer Google Fonts. Die Karten füllen ein dichtes CSS-Raster mit minimalen Abständen, bereit für den Playwright-Screenshot-Export in 2x-Auflösung. Es stehen sowohl helle als auch dunkle Themes zur Verfügung.

Arbeitsablauf

  1. Lies das Designsystem selektiv: Konsultiere design-system.md bei Bedarf:
    • Immer lesen: Abschnitt 2 (Lückenloses Grid) + Abschnitt 3 (Layout-Vorlagen) – die Grundlage des Rasters
    • Pro Kartentyp lesen: Abschnitte 5.1–5.7 je nach verwendeten Karten
    • Für das Theme lesen: Abschnitt 1 (helle Tokens) oder Abschnitt 9 (dunkle Tokens)
    • Einmalig für die erste Generierung lesen: Abschnitt 8 (HTML-Gerüst) als struktureller Ausgangspunkt
  2. Sammle den Inhalt des Nutzers – welche Statistiken, Meilensteine, Kategorien und Zitate gezeigt werden sollen
  3. Wähle ein Theme – schlage je nach Kontext hell, dunkel oder beides vor (siehe Themenauswahl unten)
  4. Wähle ein Layout – wähle aus den 3 Layout-Vorlagen basierend auf Kartenanzahl und Ausrichtung
  5. Setze Karten zusammen – wähle Kartentypen und fülle sie mit dem Inhalt des Nutzers; priorisiere Dichte (keine Karten, die sich leer anfühlen)
  6. Frage nach Logos/Bildern – wenn der Nutzer ein Logo oder Bilder hat, binde sie ein (siehe Logos & Bilder unten)
  7. Generiere das HTML – erstelle eine einzige, eigenständige HTML-Datei
  8. Visuelle Überprüfung – öffne das HTML im Browser und mache einen Screenshot, um auf Probleme zu prüfen (siehe Visuelle Überprüfung unten)
  9. Biete eine vertikale Version an – frage nach der Generierung eines Querformat-Rasters: „Möchtest du eine vertikale (Hochformat-)Version für soziale Medien?“ und generiere bei Zustimmung eine Vorlage-C-Anpassung
  10. Screenshot (optional) – verwende das Playwright-Skript, um PNGs in 2x zu erfassen

Visuelle Überprüfung

Öffne nach der Generierung des HTML immer die Ausgabe, um visuelle Probleme zu erkennen, bevor du sie dem Nutzer präsentierst. Verwende Playwright, Browser-MCP-Tools oder open, um die Datei zu rendern, und überprüfe dann auf:

Waisen in Pill-Tags – Ein einzelnes Pill-Tag oder Wort, das alleine in eine neue Zeile umbricht. Behebe dies, indem du ein Pill-Tag entfernst, sodass die verbleibenden Pill-Tags gleichmäßig ausgefüllt werden, oder füge genügend Pill-Tags hinzu, um zwei vollständige Zeilen zu füllen.

Leerflächen – Karten, die mit zu viel Weißraum spärlich wirken. Behebe dies, indem du einen Untertitel, ein Badge oder zusätzlichen Beschreibungstext hinzufügst, um die Karte zu füllen.

Textüberlauf – Zahlen oder Beschriftungen, die für ihre Kartenbreite zu lang sind. Behebe dies, indem du die Schriftgröße reduzierst oder abkürzt (z. B. „$2,4 Mio.“ statt „$2.400.000“).

Kaputtes Grid – Sichtbare Zeilenabstände oder falsch ausgerichtete Karten. Überprüfe: kein align-items: start, Abstand ist exakt 6px, alle Grid-Zellen sind belegt.

Schrift-Fallback – Text, der in Systemschriftarten statt in Sora/DM Sans gerendert wird. Stelle sicher, dass der Google-Fonts-Link vorhanden ist und die Seite Netzwerkzugriff hat.

Screenshot-Beschnitt – Rechte oder untere Kanten von Karten, die im exportierten PNG abgeschnitten sind. Behebe dies, indem du sicherstellst, dass die Viewport-Breite genau der Grid-CSS-Breite entspricht und der Clip box.x/box.y aus boundingBox() verwendet, nicht x: 0, y: 0.

Wenn Probleme gefunden werden, korrigiere das HTML und überprüfe es erneut. Präsentiere die Ausgabe dem Nutzer erst, wenn sie die visuelle Überprüfung bestanden hat.

Themenauswahl

Schlage ein Theme basierend auf dem Kontext vor. Wenn du dir unsicher bist, generiere beide.

KontextEmpfohlenes Theme
Foliensatz / PräsentationDunkel – höhere visuelle Wirkung auf Projektoren
Soziale Medien / PortfolioDunkel – sticht in Feeds hervor
Bericht / Dokument-EinbettungHell – passt zu weißen Seitenhintergründen
Druck / PDFHell – spart Tinte, bessere Lesbarkeit
Nutzer sagt „Apple-Stil“Hell – Apples typischer Look
Nutzer sagt „modern“ oder „elegant“Dunkel – zeitgenössisches Gefühl
Keine Präferenz angegebenBeide – generiere zwei Dateien, lass den Nutzer wählen

Siehe design-system.md Abschnitt 9 für vollständige dunkle Themendefinitionen oder Abschnitt 1 für helle Themendefinitionen.

Ausgabeformat

Erzeuge immer eine einzige, eigenständige HTML-Datei mit:

  • <!DOCTYPE html> + <html lang="en">
  • Google Fonts <link>-Tags im <head>
  • Gesamtes CSS in einem einzigen <style>-Block
  • Gesamter Inhalt im <body> – kein JavaScript erforderlich

Verfügbare Kartentypen

KarteVerwendung fürHauptmerkmal
HeroSlogans, SchlagzeilenFarbverlauf oben, spannt über 2 Zeilen
StatZahlen + BeschriftungenFarbcodierter Akzent pro Kategorie
KategorieGruppierte Elemente (Phasen, Teams, Quartale)Farbetikett + Untertitel + Pill-Tags
BalkendiagrammWachstum / Vergleich im ZeitverlaufFarbverlaufsbalken, Header-Badge
BadgeTool-Zuschreibung, hervorgehobener AufrufIcon-Pill + Statistikzahl
ZitatLeitbild, ErfahrungsberichtDunkler Hintergrund, weißer Text, grünes <em>
HighlightHeld-Zahl (3x, 10x, 100%)Vollflächiger Farbverlauf-Hintergrund

Layout-Vorlagen

VorlageSpaltenBreiteSeitenverhältnisAm besten geeignet für
A: Horizontal4 Spalten1200px52/2512-16 Karten, Folien
B: Horizontal3 Spalten1100px52/228-10 Karten, fokussiert
C: Vertikal2 Spalten600pxkeine (Inhalt)8-14 Karten, soziale Medien

Kritisch: Regeln für das lückenlose Grid

Diese 5 Regeln sind für ein Apple-ähnliches Erscheinungsbild zwingend erforderlich. Details siehe design-system.md Abschnitt 2.

  1. NIEMALS align-items: start setzen – Standard stretch füllt die Zellen
  2. aspect-ratio bei horizontalen Layouts verwenden, um die Containerform festzulegen
  3. Zeilen: 1fr für horizontal, auto für vertikal
  4. Abstand: 6px (nicht 8px)
  5. Jede Grid-Zelle muss belegt sein – keine leeren Zellen

Screenshot-Export

Verwende das Playwright-Skript unter scripts/screenshot.mjs, um pixelgenaue PNGs zu erfassen.

cd scripts
npm install
npx playwright install chromium
node screenshot.mjs

Bearbeite das pages-Array in screenshot.mjs, um auf deine HTML-Dateien zu verweisen. Jeder Eintrag benötigt: file (HTML-Pfad), output (PNG-Pfad), viewportWidth (muss mit der Grid-Breite übereinstimmen).

Kritisch: Viewport muss der Grid-Breite entsprechen. Wenn der Viewport breiter als das Grid ist, wird das Grid zentriert und der Clip kann die rechte Kante abschneiden. Setze viewportWidth immer auf die exakte Grid-CSS-Breite (1200 für 4 Spalten, 1100 für 3 Spalten, 600 für 2 Spalten).

Kritisch: Clip muss die Elementposition verwenden. Verwende beim Zuschneiden auf das Grid-Element box.x und box.y von boundingBox(), nicht x: 0, y: 0. Wenn das Grid in einem breiteren Viewport zentriert ist, beginnt x: 0 den Clip vor dem Grid und schneidet die rechte Seite ab.

Überprüfe nach dem Screenshot immer das Ausgabebild, um sicherzustellen, dass keine Kanten abgeschnitten sind. Prüfe, dass die Karten ganz rechts und ganz unten vollständig sichtbar sind und ihre abgerundeten Ecken intakt sind.

Logos & Bilder

Benutzer können eigene Logos oder Bilder zu den Bento-Grid-Karten hinzufügen. Frage den Nutzer, ob er Logos oder Bilder einfügen möchte.

Platzierungsmöglichkeiten:

OrtWieAm besten geeignet für
Ecke der Hero-Karte<img> mit position: absolute; top: 20px; right: 20px; width: 40px;Firmenlogo
Badge-Karten-IconErsetze das SVG in .badge-pill durch ein <img>-Tag (width: 16px; height: 16px; border-radius: 4px;)Tool/Framework-Logo
Vollflächiger Kartenhintergrundbackground-image: url(...) mit Overlay-Verlauf für TextlesbarkeitFeature-Screenshots
Eigenständige Bildkarte<img> füllt die Karte mit object-fit: cover; border-radius: 18px;Produktfotos

Richtlinien:

  • Verwende <img src="pfad/zu/datei.png"> mit einem lokalen Dateipfad – das HTML ist für den Screenshot-Export, nicht zum Hosten
  • Halte Logos klein (24-48px), damit sie die Karte nicht dominieren
  • Stelle bei dunklem Theme sicher, dass Logos auf dunklem Hintergrund funktionieren (verwende weiße/helle Versionen)
  • Füge immer alt-Text für die Barrierefreiheit hinzu

Inhaltsanpassung

NutzerdatenEmpfohlene VorlageKartenmischung
3–5 Statistiken, keine KategorienC (2 Spalten vertikal)1 Hero + 3–5 Stats + 1 Zitat
6–8 Statistiken, 1–2 KategorienB (3 Spalten horizontal)1 Hero + 4–6 Stats + 1–2 Kategorien + 1 Diagramm
8–12 Statistiken, 3+ KategorienA (4 Spalten horizontal)Volle Mischung: Hero, Stats, Kategorien, Diagramm, Badge, Zitat, Highlight
Soziales / HochformatC (2 Spalten vertikal)Jede Mischung, kleinere Schriftarten

Dichteregel: Jede Karte sollte sich vollständig anfühlen. Wenn eine Karte spärlich wirkt, füge einen Untertitel, ein Badge oder Pill-Tags hinzu. Wenn das Grid sichtbare Leerflächen aufweist, lasse entweder eine Karte über mehrere Zellen spannen oder füge eine unterstützende Karte hinzu.

Anpassungscheckliste

  1. Inhalt sammeln – Statistiken, Kategorien, Meilensteine, Zitate
  2. Theme wählen – hell, dunkel oder beides
  3. Layout wählen – 4 Spalten, 3 Spalten oder 2 Spalten
  4. Grid-Bereiche benennen – lesbare Namen, die zum Inhalt passen
  5. Kartentypen auswählen – Hero, Stat, Kategorie, Diagramm, Badge, Zitat, Highlight
  6. Akzentfarben zuweisen – eine pro Kategorie, maximal 3–4 Akzente
  7. Abmessungen festlegen – Viewport-Breite entspricht Grid-Breite
  8. Seitenverhältnis festlegen – nur für horizontal; für vertikal weglassen
  9. Dichte überprüfen – keine leeren Karten, keine ungenutzten Grid-Zellen, Abstand 6px
  10. Für Ausrichtung skalieren – vertikal erhält kleinere Schriftarten, Abstände, Radien
  11. Screenshot – Playwright in 2x, Viewport entspricht Grid-Breite

Verifizierung

Nach der Generierung einer Bento-Grid-HTML-Datei:

  1. In Chrome oder Safari öffnen – überprüfen, dass alle Grid-Zellen gefüllt sind und keine sichtbaren Zeilenabstände vorhanden sind
  2. Schriftartladung prüfen – Sora und DM Sans sollten gerendert werden (kein System-Fallback)
  3. Bei dunklem Theme – überprüfen, dass die Kartenhintergründe #1a1a1a sind, nicht #fff
  4. Screenshot mit der korrekten Viewport-Breite (1200/1100/600) in 2x-Auflösung
  5. Dichte bestätigen – keine Karte sollte übermäßigen Weißraum aufweisen

Hinweise

  • Google Fonts erfordert Internetzugang; offline fallen die Grids auf Systemschriftarten zurück
  • Playwright-Screenshot ist optional; Benutzer können manuelle Browser-Screenshots machen
  • aspect-ratio ist nur für horizontale Layouts; vertikale Layouts ergeben sich aus der Inhaltshöhe
  • Maximal 3–4 Akzentfarben pro Grid, um die Apple-ähnliche Zurückhaltung zu wahren
  • Dieses Skill erzeugt statisches HTML für den Screenshot-Export, keine interaktiven Dashboards
  • Für Grids mit weniger als 6 Datenpunkten eignet sich Vorlage C (2 Spalten vertikal) meist am besten

Referenzdateien

Verwandte Skills