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