Communitygithub.com

evalix098/tiktoklive

Design and build polished, non-generic UI for this TanStack Start + React + Tailwind v4 + shadcn/Radix app. Use whenever you create or restyle any interface surface — pages, landing pages, dashboards, forms, modals, nav, and game overlays (start screens, HUD, menus). Covers design tokens, layout, typography, color, spacing, motion, and the anti-"AI-slop" rules that keep output from looking generic. Triggers on "design", "UI", "make it look good", "polish", "landing page", "theme", "style", "redesign", "ugly", "clean up".

tiktoklive とは?

tiktoklive is a Cursor agent skill that design and build polished, non-generic UI for this TanStack Start + React + Tailwind v4 + shadcn/Radix app. Use whenever you create or restyle any interface surface — pages, landing pages, dashboards, forms, modals, nav, and game overlays (start screens, HUD, menus). Covers design tokens, layout, typography, color, spacing, motion, and the anti-"AI-slop" rules that keep output from looking generic. Triggers on "design", "UI", "make it look good", "polish", "landing page", "theme", "style", "redesign", "ugly", "clean up".

対応~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/evalix098/tiktoklive/tree/HEAD/.grok/skills/design-ui

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Design & UI

Make interfaces that look intentional and premium, not template-generic. This is the single biggest quality lever in the app builder. Apply it to DOM / overlay UI — pages, chrome, HUD, menus, forms. (For a 3D game's gameplay canvas, see the building-games skill; this skill governs the DOM UI layered over it.)

Read references/ for depth (loaded on demand — don't inline it all):

  • references/refined-ui.md — the full product-chrome/overlay design system.
  • references/typography.md — type scale, pairing, rhythm.
  • references/surfaces.md — elevation, borders, shadows, layering.
  • references/animations.md — motion, easing, transitions.
  • references/performance.md — keep UI smooth (60fps, no jank).

1. Design-system-first (do this before styling anything)

Define the system once, then compose from it. Never sprinkle ad-hoc values.

  • Tokens in CSS (Tailwind v4 is CSS-first). Put the palette, radii, and fonts in src/styles.css under @theme as CSS variables; consume them as Tailwind utilities. One source of truth.
    @import "tailwindcss";
    @theme {
      --color-bg: #0b0b0f;      --color-surface: #16161d;
      --color-fg: #e7e7ea;      --color-muted: #a0a0ab;
      --color-primary: #14b8a6; --color-border: #26262f;
      --radius: 0.75rem;        --font-sans: "Inter", system-ui, sans-serif;
    }
    
  • Use shadcn/ui components (Radix primitives + cva variants + tailwind-merge) for buttons, dialogs, dropdowns, inputs, etc. They're accessible and consistent. Generate them into src/components/ui; style via tokens, not inline hex.
  • Tailwind v4 base fix — buttons need a pointer cursor. v4's Preflight makes <button> use cursor: default, which feels broken. Add this once in src/styles.css so buttons/clickable roles show a pointer:
    @layer base {
      button:not(:disabled),
      [role="button"]:not(:disabled) { cursor: pointer; }
    }
    
  • Ban ad-hoc styling: no raw hex in JSX, no text-white/bg-black literals, no arbitrary values like p-[16px] or text-[13px]. If you need a value, it becomes a token or a scale step.

2. The quantified rubric (cheap rules that prevent "ugly")

  • ≤ 3–5 colors total (one primary + neutrals + at most one accent). No random extra hues. Don't default to purple unless asked.
  • ≤ 2 font families (often one). Pair a display/heading with a body, or use one.
  • Line-height 1.4–1.6 for body; tighter for large headings.
  • When you override a background color, override the foreground/text color too (contrast must hold — check both light and dark).
  • Mobile-first: design the ~390px layout first, then scale up. No horizontal overflow; tap targets ≥ 44px.
  • Consistent spacing scale (4/8-based). Generous whitespace beats cramming.
  • One accent, used sparingly for primary actions — not everywhere.

3. Anti-AI-slop (the tells that make output look generic — avoid)

  • No gradient-blob filler, no giant hero gradients as a substitute for content.
  • No emoji as icons — use a real icon set (lucide-react).
  • No hand-drawn SVG illustrations/maps/charts — use real libraries (recharts for charts) or real generated images.
  • No placeholder images / lorem-gray boxes in the final product — generate real images or use real content; set crossOrigin="anonymous" on canvas images.
  • Avoid the overused-font look (default system-only, or Comic Sans-tier picks).
  • Every element earns its place. Cut decorative noise. Establish a system, then vary with intent — not randomness.
  • Match the existing UI when editing an app in place; don't introduce a second visual language.

4. Layout & hierarchy

  • Clear visual hierarchy: one primary action per view; size/weight/color express importance. See references/typography.md and references/surfaces.md.
  • Use real layout structure (grid/flex, container max-widths), not absolute-position hacks. Align to a consistent grid.
  • Empty states, loading states, and error states are part of the design — don't ship blank/janky intermediate states.

5. Motion (subtle, purposeful)

  • Short, eased transitions (150–250ms) on hover/press/enter; respect prefers-reduced-motion. Details in references/animations.md.
  • Never animate layout in a way that causes jank; prefer transform/opacity.

6. Game overlays (when this pairs with building-games)

The gameplay canvas is owned by building-games. This skill styles the DOM overlay: start/"click to play" screen, HUD, score, menus, pause, mobile controls. Keep overlay readable over the canvas (backdrop, contrast), and keep it out of the pointer-lock/gameplay input path.


Finish checklist (before you call UI done)

  • Tokens defined in @theme; no ad-hoc hex / arbitrary values in JSX.
  • ≤ 5 colors, ≤ 2 fonts, consistent spacing scale.
  • Contrast holds; foreground overridden wherever background is.
  • Mobile (~390px) has no overflow; targets ≥ 44px.
  • Real icons/images/charts — none of the anti-slop tells.
  • Loading/empty/error states handled; motion subtle and reduced-motion-safe.
  • Rendered and eyeballed in a browser (see AGENTS.md verification), not just curl.

Individual skills in this repo

This repo contains 17 individual skills — each has its own dedicated page.

evalix098/tiktoklive

Add user accounts and sign-in to this TanStack Start app. Use when the app needs authentication, sign-in, user accounts, protected routes, or per-user data. Triggers on "auth", "login", "log in", "sign in", "sign up", "account", "users", "authentication", "protected", "who is logged in", "current user", "per-user".

evalix098/tiktoklive

Build browser games and interactive/canvas/3D experiences in this TanStack Start + React app. Use for any game, simulation, or WebGL/Canvas experience — 2D or 3D, single-player. Covers the game loop & timing, 3D orientation/camera conventions, collision, performance, assets, audio, save, game feel, and per-genre playbooks. For WASD / vehicle / flight **input signs and inverted A/D**, open the **`controls`** skill — do not rely on this file or racing-kart alone. Triggers on "game", "minecraft", "fps", "platformer", "racing", "tetris", "snake", "shooter", "3d", "three.js", "canvas", "voxel", "physics".

evalix098/tiktoklive

Player-facing input signs for browser games: WASD, vehicles, flight, FPS mouse-look, and the #1 failure mode (inverted A/D). Mandatory control self-tests and a tiny test interface so you can verify A turns left before shipping. Load for ANY game with movement, steering, flying, driving, tanks, boats, mechs, drones, planes, karts, third-person follow cams — not only racing. Triggers on "controls", "WASD", "inverted", "steer", "flight", "airplane", "kart", "vehicle", "yaw", "roll", "pitch", "mouse look", "A/D".

evalix098/tiktoklive

Deep guide for game ANIMATION assets: motion cycles, action keyframes, effect sequences, and animation sprite sheets — built around a video-first pipeline. In this app-builder sandbox, execute via the video2dsprite / generate2dsprite skills (magenta + scripts), not ad-hoc ffmpeg. Use whenever generating anything that moves: walk/run cycles, attacks, idles, FX, flags, fire, animation sheets. Complements game-asset-core.

evalix098/tiktoklive

Core discipline for ANY game-asset generation with Imagine tools: the engine-ready defaults users don't state, spec checklists, style anchoring, read-back verification, honest defect flagging. Use whenever generating any game art (sprites, sheets, animations, tiles, UI, FX) — then ALSO load the matching specialist skill: game-animation-frames for anything that moves, game-tilesets for tiles/terrain, game-character-consistency for recurring characters, game-ui-icons for UI and icons.

evalix098/tiktoklive

Deep guide for CHARACTER IDENTITY across images: turnarounds (front/side/ back), state and damage variants, palette swaps, equipment changes, and same-character-in-context sets. Use whenever generating character turnarounds, character sheets, variants of an existing sprite, or any same-subject multi-image set. Complements game-asset-core.

evalix098/tiktoklive

Deep guide for game TILE assets: seamless tileable textures, terrain transition tilesets, autotiles, and ground/platform tiles. Use whenever generating tileable textures, tilesets, terrain transitions, or seamless patterns. Complements game-asset-core.

evalix098/tiktoklive

Deep guide for game UI assets: buttons with interaction states, panels, bars, wordmark logos, and icon sets. Use whenever generating game UI elements, HUD assets, inventory icons, icon sets, buttons, or title logos. Complements game-asset-core.

evalix098/tiktoklive

Generate production-oriented 2D game maps with `imagine_text_to_image`: RPG/top-down maps, side-scroller parallax stages, tilemaps, layered raster maps, prop packs, collision zones, and walkable areas. Use when building browser games that need real map art (not pure code-drawn tiles), layered props, or map collision metadata. Triggers on "map", "level", "stage", "tilemap", "overworld", "dungeon", "side scroller background", "prop pack", "2D map".

evalix098/tiktoklive

Generate and postprocess 2D game sprites and animation sheets: pixel-art characters, NPCs, creatures, spells, projectiles, impacts, props, summons, and transparent PNG/GIF exports. Use when building browser games that need real sprite sheets (not code-drawn placeholders), matching a map art style, or producing magenta-background sheets for chroma-key cleanup. Triggers on "sprite", "sprite sheet", "animation sheet", "pixel art character", "walk cycle", "attack animation", "projectile sprite", "2D game asset".

evalix098/tiktoklive

How to use the Imagine tools in Grok Build: imagine_text_to_image, imagine_image_to_image, imagine_reference_to_image, imagine_text_to_video, imagine_image_to_video, imagine_reference_to_video, and render_file for chat previews. When to build a visual with code instead of generating it, prompt-craft, reference-first handling of real people, factual grounding, and asset-consistency. Load this whenever generating or editing an image or video is on the table. Tool-usage-driven, not triggered by a user merely mentioning images.

evalix098/tiktoklive

Peer-to-peer realtime multiplayer over WebRTC data channels: every user of the deployed app connects directly to every other user (full mesh), the server only brokers the handshake at /api/rtc. Lowest possible latency, zero per-message server cost. Use for 2-8 player co-op/casual realtime: shared cursors, drawing, party games, casual action. Triggers: p2p, peer to peer, webrtc, low latency multiplayer, direct connection.

evalix098/tiktoklive

Use Neon Postgres (the database) in this TanStack Start app. Use when the app needs to store or query data, persist state, or keep per-user data. Triggers on "database", "Postgres", "Neon", "save data", "store data", "persist", "tables", "SQL", "query", "migrations".

evalix098/tiktoklive

Share-link previews and app identity for apps on *.grok.me: the injector-owned og:image card, the SVG favicon, and PWA icons for installable apps. Use when scaffolding, renaming, or restyling the app — and for share / unfurl / OG / Twitter card questions. A custom 1200×630 card from the app's own art is the default — games of every kind (DOM board/word games included), whimsical apps, creative tools, and brand-forward pages; only plain utilities keep the placeholder. Always run the brand-asset pass as a `task` subagent and never wait for it. Triggers on "share", "rename", "app name", "OG", "Open Graph", "twitter card", "unfurl", "og:image", "og:type", "x:game:image", "x-banner", "link preview", "social card", "thumbnail", "preview image", "favicon", "app icon", "PWA", "manifest", "installable", "home screen", "SEO", "meta description".

evalix098/tiktoklive

Official Three.js API and TSL (Three.js Shading Language) reference for LLM code generation. Load when writing or debugging three.js / WebGL / WebGPU / custom materials / shaders / GLTF / advanced three APIs beyond basic game loop/controls. Prefer building-games for game correctness (loop, WASD, camera, orientation); use this skill for full API/TSL depth. Triggers on "three.js", "threejs", "WebGPU", "TSL", "NodeMaterial", "shader", "GLTF", "MeshStandard", "OrbitControls", "WebGLRenderer".

evalix098/tiktoklive

Grok Build only. Turn a 2D character still into denser animation sprites via imagine_text_to_image base → imagine_image_to_video (6s/10s run-in-place) → ffmpeg frames → magenta chroma-key → dense sampled strips/grids/GIFs. Use when the user wants video-to-sprite, smoother run/walk cycles, or denser intermediate poses. Prefer generate2dsprite for crisp production pixel sheets. Triggers on "video to sprite", "imagine_image_to_video sprite", "dense walk cycle", "smooth run animation from video".

evalix098/tiktoklive

Call the xAI API (Grok) from this app's server code using the injected XAI_API_KEY: chat/LLM features, image and video generation (Imagine), and voice (text-to-speech). Use when the app needs any "AI" / "assistant" / "chatbot" / "Grok" functionality, runtime image/video generation, or speech. Triggers on "AI", "LLM", "chatbot", "assistant", "Grok", "xAI", "generate text", "summarize", "generate image", "AI video", "voice", "text to speech", "TTS", "OpenAI" (use xAI instead).

関連スキル