本文へ移動
cccskills
無料GitHub で公開

building-landing-home

Compose a product or documentation home page from the @lobehub/ui/awesome landing components: LandingHero, AgentSkillCard, LogoMarquee, LandingSection, BentoGrid/BentoCard, CodeShowcase, FeatureGrid, InstallBanner and FluidGradient. Covers page structure, the lobedocs homePage hook, router links, theming the accent gradient, and a review checklist. Trigger on build a home page, landing page, docs home, marketing page, hero section, redesign home, lobedocs homePage, docs/home/home.tsx, 首页, 落地页, 官网首页.

日本語の概要は準備中です。原文の説明を表示しています。

lobehub/lobe-chartsスター 121(GitHub 121 + cccskills 0)
連携ツールOpenAI

実行スコア 未検証

インストール方法を見る

含まれるファイル(1)

  • SKILL.md9.1 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Building a landing home with @lobehub/ui/awesome

Every band of a landing page has a component. Your job is to choose the bands, write honest copy and render real product UI inside them, not to restyle containers.

Components

All components import from @lobehub/ui/awesome. Read each one's page before using a prop you have not seen here: https://ui.lobehub.com/skills/components/awesome/<kebab-name>.md.

BandComponentUse it for
OpeningLandingHeroBadge, title with gradient accent, description, up to two actions, optional aside column.
Beside the hero textAgentSkillCard"I'm an Agent / I'm a Human" card: a prompt for coding agents and an install command for people.
Under the heroLogoMarqueeIntegrations or supported providers. Icons from @lobehub/icons.
Any middle bandLandingSectionTag, title and description on the left, small actions on the right, content below. Wrap every middle band in it.
Live component galleryBentoGrid + BentoCardTiles that render real components; colSpan/rowSpan for emphasis; href to the docs page.
Code next to its resultCodeShowcaseTwo to four short snippets, each with a live preview.
Reasons to chooseFeatureGridThree or six cards of icon, title and one-sentence description.
Closing call to actionInstallBannerTitle, copyable install command, footnote with license and a docs link.
Background textureFluidGradientPlace it behind a positioned band when you want a texture. Needs a positioned parent.

Page structure

Default order. Drop a band rather than filling it with filler.

  1. LandingHero with aside={<AgentSkillCard />} and children={<LogoMarquee />}.
  2. LandingSection + BentoGrid: the widest, most visual proof.
  3. LandingSection + CodeShowcase: how little code it takes.
  4. LandingSection + FeatureGrid: foundations such as theming, i18n, performance.
  5. InstallBanner.
import {
  AgentSkillCard,
  InstallBanner,
  LandingHero,
  LandingSection,
  LogoMarquee,
} from '@lobehub/ui/awesome';
import { ArrowRight } from 'lucide-react';

export default function Home() {
  return (
    <>
      <LandingHero
        accent="UI Kit"
        actions={[
          {
            href: '/docs',
            icon: ArrowRight,
            iconPlacement: 'end',
            label: 'Get Started',
            primary: true,
          },
          { href: 'https://github.com/acme/kit', label: 'GitHub' },
        ]}
        aside={
          <AgentSkillCard
            agent={{
              code: 'Read https://kit.acme.dev/skills.md and follow it to build UI with @acme/kit.',
              description: 'Send this prompt to your agent to pick the right components',
            }}
            human={{
              code: 'npx skills add acme/kit',
              description: 'Install the skills into your project',
            }}
          />
        }
        description="One sentence on what it is and who it is for."
        title="Acme"
      >
        <LogoMarquee items={[/* { icon: OpenAI, label: 'OpenAI' } */]} />
      </LandingHero>

      <LandingSection
        actions={[{ href: '/components', label: 'Browse components' }]}
        eyebrow="Components"
        id="home-gallery"
        title="Built for AI interfaces"
      >
        {/* BentoGrid of live tiles */}
      </LandingSection>

      <InstallBanner
        command="pnpm add @acme/kit"
        footnote="Open source · MIT license"
        title="Start building"
      />
    </>
  );
}

Wiring

  • lobedocs: this repo already sets homePage: './docs/home/home.tsx' in docs.config.ts. The default export receives { description, getStartedPathname }; use getStartedPathname for the primary action.
  • Client-side routing: LandingHero, BentoCard and FeatureGrid render plain anchors. Pass one shared renderLink so internal links use the router and absolute URLs open in a new tab:
import type { LandingLinkRender } from '@lobehub/ui/awesome';
import { Link } from 'react-router';

export const renderLink: LandingLinkRender = ({ external, href, ...props }) =>
  external ? (
    <a href={href} rel="noreferrer" target="_blank" {...props} />
  ) : (
    <Link to={href} {...props} />
  );
  • Accent colour: the gradient on the hero accent, eyebrows, outlined action and install glow reads --lobe-landing-gradient (exported as LANDING_GRADIENT_VAR). Set it once on :root (and per theme) instead of overriding component styles. docs/home/home.tsx does this with createGlobalStyle from @lobehub/ui and LANDING_PALETTE_LIGHT / LANDING_PALETTE_DARK from @lobehub/ui/awesome. FluidGradient takes its three stops through colors.
  • Search indexing: wrap the title and description in <span data-pagefind-meta="title"> / "description" when the site uses Pagefind.

In this repo

  • The live page is docs/home/home.tsx (@lobehub/ui 6.5.1 installed). It already follows the default order: LandingHero with AgentSkillCard and a LogoMarquee of model icons, BentoGrid of live charts, CodeShowcase, FeatureGrid, InstallBanner. Edit it in place rather than starting over.
  • Tiles and snippets import charts from @lobehub/charts (aliased to src/) and link to /components/<kebab-name> pages that exist in src/.
  • The agent prompt points at https://charts.lobehub.com/skills.md; the footer links /skills.md and /llms.txt. Both files are generated by lobedocs build.
  • docs/index.mdx renders docs/index.tsx as a demo; it is not the landing page.
  • Check the result with npm run dev, then npm run docs:build.

AgentSkillCard content

  • The agent prompt must point at a URL that exists: the site's skills.md (lobedocs generates it) or llms.txt. Say what the agent should do with it, in one sentence.
  • The human command must be runnable as written. If the project has no skills package, drop human and the card shows the prompt alone.
  • agents defaults to DEFAULT_SKILL_AGENTS (Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, Windsurf, Cline, OpenCode). Replace it with the .Avatar components from @lobehub/icons that the project actually supports, or [] to hide the row.
  • Use footer for secondary links such as skills.md and llms.txt.

Copy and content rules

  • Title: the product name, with the category or promise as accent. No more than four words.
  • Description: one sentence, under 20 words, concrete ("React components for AIGC web apps"), never "powerful", "seamless" or "next-generation".
  • At most two hero actions: one primary, one secondary.
  • Bento tiles render real components with realistic data. A tile that cannot show something live does not belong in the grid. Give the most expressive component colSpan={2} rowSpan={2}.
  • CodeShowcase snippets fit in about ten lines and compile as written.
  • FeatureGrid uses three or six items; each description is one sentence.
  • LandingSection id values must be unique; they label the headings.
  • eyebrow is a one- or two-word tag ("Components", "Foundations"); give each band its own eyebrowColor preset (blue, green, orange…). Give a section at most one actions entry.
  • Only the hero's Get Started action is primary. Every other action renders as BottomGradientButton; pass onNavigate={useNavigate()} so internal ones route client-side.

Review checklist

  1. Every link resolves: primary action, bento hrefs, prompt URL, footer links.
  2. Light and dark mode both read well; the accent gradient is not the only thing carrying meaning.
  3. At 375px wide the hero stacks, actions fill the width, and the bento grid is one column.
  4. Nothing animates under prefers-reduced-motion (the marquee stops, the texture freezes).
  5. Copy passes the rules above; no placeholder text or lorem ipsum remains.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Author and fix the lobe-charts documentation site, which is built with @lobehub/docs-kit (the `lobedocs` CLI, a React Router + Vite static site). Covers this repo's layout, docs.config.ts, package scripts, component doc pages (index.mdx frontmatter, `?demo` imports, <Demo>, <Api>), the home page, the changelog, and the build-time validations that reject bad docs. Trigger on docs-kit, lobedocs, defineDocsConfig, docs.config.ts, write component docs, add a demo, <Demo>, <Api>, index.mdx, docs build error, 文档站, 写文档, 组件文档.

日本語の概要は準備中です。原文の説明を表示しています。

lobehub/lobe-charts1212026年10月22日 更新

lobehub のスキルをすべて見る

このスキルの問題を報告する