capsule AI-native Unix-like composition layer

capsule.yaml

2,159 bytes · 60 lines · capsule://quake0day/[email protected] raw on github

apiVersion: capsule.dev/v0.1
kind: Capsule
name: lkmeet-landing-page
version: 0.1.0
type: template
purpose:
  summary: 'Implements the application''s landing page and room entry points, providing
    UI for users to start a demo meeting, connect to a custom LiveKit server, or join
    a specific room. This capsule is designed as a starting point for a video conferencing
    application''s user flow.

    '
  owns:
  - Home page UI with demo and custom connection tabs
  - Room entry page UI with pre-join functionality
  - Associated styles and branding assets
  does_not_own:
  - Core video conference logic
  - Global application layout
interfaces:
  provides:
  - kind: library
    name: HomePage
    description: The main landing page for the application.
  - kind: library
    name: CustomRoomConnectionPage
    description: Page for connecting to a LiveKit room with custom URL and token.
  - kind: library
    name: RoomPage
    description: Page for joining a specific LiveKit room.
dependencies:
  capsules:
  - name: lkmeet-livekit-client-utils
    version: '>=0.1.0'
  - name: lkmeet-video-conference-core
    version: '>=0.1.0'
agent:
  summary_for_ai: 'This capsule defines the main user entry points and navigation.
    Focus on user experience for joining meetings, handling form submissions, and
    routing. The content and branding are specific to LiveKit Meet, so ensure these
    are clearly marked for customization.

    '
verification:
  invariants:
  - Navigation between tabs and to meeting rooms must be functional.
  - Form submissions for custom connections must correctly pass parameters.
  - E2EE passphrase handling must be secure.
x-reuse:
  notes: 'All text content on `app/page.tsx` (e.g., ''Try LiveKit Meet for free'',
    ''Open source video conferencing app built on...'', footer links) is specific
    to LiveKit Meet. The `public/images/livekit-meet-home.svg` is a branded asset.
    The `DemoMeetingTab` and `CustomConnectionTab` components contain hardcoded UI
    and text. These elements will require significant customization for reuse in a
    different project.

    '
x-reconstruct:
  install: install.json