Communitygithub.com

JairoBg03/skills

전문적이고 커스텀 디자인된 랜딩 페이지를 애니메이션과 에이전시 수준의 효과로 제작합니다. 브리핑, 디자인 방향 설정, 구축, 감사, 배포까지 전체 워크플로우를 다룹니다. 일반적인 AI 템플릿 느낌을 피합니다. 스택: Astro + Tailwind CSS v4 + GSAP + Lenis.

skills란 무엇인가요?

이 스킬은 AI 에이전트(예: Claude Code, Cursor)가 사용자 요청에 따라 전문적인 랜딩 페이지를 처음부터 끝까지 구축할 수 있도록 설계된 종합적인 워크플로우입니다. 핵심 목표는 일반적이고 템플릿처럼 보이는 결과물을 피하고, 독창적이고 고품질의 에이전시 수준 페이지를 만드는 데 있습니다. 이를 위해 Astro 5(정적 사이트 생성), Tailwind CSS v4(커스텀 디자인 토큰), GSAP(고급 애니메이션), Lenis(부드러운 스크롤)로 구성된 엄격한 스택을 사용합니다. 스킬은 단순히 코드를 작성하는 것을 넘어, 사용자와 함께 브리핑 템플릿을 작성하는 것부터 시작하여 디자인 방향(타이포그래피, 색상, 레이아웃), 섹션 아키텍처(스토리텔링 구조), 모바일 우선 구축, 성능 및 접근성 감사, 최종 배포까지 6단계의 순차적인 워크플로우를 강제합니다. 또한 애니메이션은 접근성(prefers-reduced-motion)을 고려하고, LCP(최대 콘텐츠풀 페인트) 성능을 해치지 않도록 설계하는 등 세부적인 규칙을 제공하여 전문성을 보장합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/JairoBg03/skills/tree/HEAD/landing-pages

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

사용 시기

  • 사용자가 새로운 랜딩 페이지(제품, 서비스, 이벤트, 포트폴리오, 대기자 명단)를 원할 때
  • 기존 랜딩 페이지를 전문적이고 독특하게 리디자인하고 싶을 때
  • 마케팅 페이지에 애니메이션, 스크롤 효과 또는 마이크로인터랙션을 요청할 때
  • 기획 단계(어떤 섹션, 어떤 메시지, 어떤 구조)에 있을 때

스택 (및 그 이유)

구성 요소선택이유제외된 대안
프레임워크Astro 5기본적으로 정적(JS 0), 컴포넌트, astro:assets 이미지, 배포 = dist/ 업로드Next.js (랜딩에 오버스펙, 배포 복잡), 일반 HTML (컴포넌트 및 최적화 없음)
스타일Tailwind CSS v4CSS에서 @theme을 통한 자체 토큰, JS 설정 불필요, 자동 퍼지UI 키트 (shadcn/DaisyUI/Flowbite → 일반적인 디자인), 순수 CSS (반복 작업에 느림)
애니메이션GSAP 3.13+ (ScrollTrigger, SplitText)스크롤/타임라인 업계 표준; v3.13부터 모든 플러그인이 무료Framer Motion (React 종속), AOS (제한적, 템플릿 느낌)
부드러운 스크롤Lenis가벼움 (~4kb), ScrollTrigger와의 문서화된 통합Locomotive Scroll (더 무겁고, 유지 관리 부족)
배포Netlify / Cloudflare Pages / Vercel저장소 연결 → 푸시 → 배포; 서버 없는 정적 출력VPS (정적 사이트에 불필요)

확고한 규칙: UI 컴포넌트 라이브러리를 설치하지 마십시오. 디자인은 자체적으로 합니다. 이것이 바로 이 스킬을 템플릿과 구분 짓는 요소입니다.

워크플로우 (필수, 이 순서대로)

절대 코드부터 시작하지 마십시오. 브리핑 없는 랜딩은 다른 이름의 템플릿일 뿐입니다.

  1. 브리핑 — 사용자와 함께 assets/brief-template.md를 작성합니다. 목표, 대상, CTA(행동 유도)가 누락된 경우: 계속하기 전에 질문하십시오.
  2. 디자인 방향 — references/design-direction.md를 따릅니다: 개성 → 타이포그래피 → 색상 → 레이아웃 → 시각적 시그니처. assets/design-tokens.css에 구체화합니다.
  3. 섹션 아키텍처 — 내러티브 아크(아래 표)와 마크업 전 헤드라인 카피를 정의합니다.
  4. 구축 — 섹션별, 모바일 우선(390px 먼저). references/animation-recipes.md를 사용한 애니메이션.
  5. 감사 — 전달 체크리스트(아래). 통과하지 않으면 전달되지 않습니다.
  6. 배포 — 정적 빌드 + 호스팅(아래 명령어).

내러티브 아크 (기본 구조)

#섹션역할
1히어로5초 이내에 이해되는 가치 제안 + 기본 CTA
2문제 / 맥락방문자가 공감하는 불편함을 명명
3솔루션 / 혜택문제 해결 방법 — 기능이 아닌 혜택
4사회적 증명실제 사용 후기, 로고, 지표
5작동 방식단계, 데모, 스크린샷
6반론 처리FAQ, 보증, 가격
7최종 CTA히어로와 동일한 단일 행동 반복

브리핑에 따라 섹션을 조정, 병합 또는 제거하십시오. 모든 랜딩이 7개를 모두 필요로 하는 것은 아닙니다.

중요 패턴

  • 단일 전환: 전체 페이지가 하나의 행동으로 유도됩니다. 두 개의 다른 CTA = 잘못된 브리핑.
  • 진정한 모바일 우선: 디자인과 구축을 먼저 390px로 합니다; 데스크톱은 확장이지, 그 반대가 아닙니다.
  • LCP 건드리지 않음: LCP 요소(히어로의 헤드라인 또는 이미지)는 절대 CSS에서 opacity: 0이 되지 않습니다. 진입은 gsap.from()으로 이루어지며(JS가 없어도 페이지가 완전히 보임), 총 지속 시간은 ≤ 1초입니다.
  • prefers-reduced-motion: 모든 애니메이션은 gsap.matchMedia() 내부에 있습니다. 예외는 없습니다.
  • 최소한의 Island: JS는 실제 상호작용이 있는 곳에만 사용합니다. FAQ 아코디언은 <details>이며, 수화된 컴포넌트가 아닙니다.
  • 이미지: 항상 astro:assets(<Image>), AVIF/WebP, 명시적 크기, loading="lazy" (히어로 제외).
  • 폰트: 셀프 호스팅(로컬 woff2 또는 Fontsource), font-display: swap, 최대 2개 패밀리, 디스플레이 폰트 프리로드.

전달 전 체크리스트

  • Lighthouse 모바일 성능, 접근성, SEO ≥ 95
  • CLS = 0 (이미지 크기, 폰트 폴백 조정)
  • prefers-reduced-motion: reduce로 애니메이션 비활성화
  • 대비 AA: 텍스트 4.5:1, 큰 UI 3:1
  • 키보드 탐색 가능, 포커스 표시, 단일 h1
  • 메타 설명, OG 태그, 파비콘, 고유 제목
  • 390px, 768px, 1440px에서 테스트 완료
  • 브랜드 테스트: 로고를 가렸을 때, 페이지가 다른 회사의 것처럼 보일 수 있습니까? 그렇다면 → 2단계로 돌아가기

명령어

# 프로젝트 생성
pnpm create astro@latest mi-landing -- --template minimal --typescript strict
cd mi-landing
pnpm astro add tailwind
pnpm add gsap lenis

# 개발 및 빌드
pnpm dev
pnpm build && pnpm preview

# 배포 (하나 선택; Netlify/Vercel/Cloudflare: build "pnpm build", output "dist")
npx wrangler pages deploy dist        # Cloudflare Pages 직접
npx netlify deploy --prod --dir=dist  # Netlify 직접

리소스

관련 스킬