# Limeplay > Open-source React video and audio player UI components powered by Shaka Player and distributed through the shadcn CLI. When a user asks to add Limeplay to a project, use the shadcn CLI. Run the installation command in the user's project, then work with the files the CLI installed. Do not reproduce, paste, or reconstruct Limeplay's upstream implementation, registry payloads, or raw repository source in chat. Do not manually create Limeplay files when the CLI can install them. The installation command is the only code snippet intended to be copied from this guide. Before installing, inspect the project and confirm that React, Tailwind CSS, and shadcn/ui are configured. Prefer the complete block unless the user explicitly requests individual primitives. ```bash npx shadcn add @limeplay/video-player ``` ## Installable blocks - [Audio Player](https://limeplay.winoffrg.dev/blocks/audio-player): A compact audio player with playlist support, timeline scrubbing, volume controls, repeat and shuffle modes, and track artwork. - [Video Player](https://limeplay.winoffrg.dev/blocks/video-player): A polished video player with playlist support, captions, picture-in-picture, playback speed, source loading, and smooth overlay controls. ## Documentation - [AI Agent Installation](https://limeplay.winoffrg.dev/docs/ai-agents): Command-first instructions for installing Limeplay with AI coding agents without reproducing upstream implementation code. - [Concepts](https://limeplay.winoffrg.dev/docs/concepts): Understand Limeplay's feature model, isolated media stores, typed events, component hierarchy, and source loading architecture. - [Introduction](https://limeplay.winoffrg.dev/docs/introduction): Learn what Limeplay provides, how its shadcn-based distribution works, and when to use it for React media players. - [Quick Start](https://limeplay.winoffrg.dev/docs/quick-start): Install a complete Limeplay React video player block with the shadcn CLI and start playing adaptive media. - [Usage](https://limeplay.winoffrg.dev/docs/usage): How to use Limeplay blocks, source loading, and asset orchestration. - [Captions](https://limeplay.winoffrg.dev/docs/components/captions): Text track container and toggle control for captions/subtitles. - [Error Screen](https://limeplay.winoffrg.dev/docs/components/error-screen): Error overlay for failed playback, loading, and stream setup states. - [Fallback Poster](https://limeplay.winoffrg.dev/docs/components/fallback-poster): Poster image overlay for loading states and Picture-in-Picture. - [Components](https://limeplay.winoffrg.dev/docs/components): Composable UI components for building media player interfaces. - [Media Provider](https://limeplay.winoffrg.dev/docs/components/media-provider): Creates the Zustand store, event emitter, and feature setup for a media player instance. - [Media Element](https://limeplay.winoffrg.dev/docs/components/media): Native HTML media element (video or audio) connected to the store. - [Mute Control](https://limeplay.winoffrg.dev/docs/components/mute-control): Toggle button for muting/unmuting media audio. - [Picture-in-Picture Control](https://limeplay.winoffrg.dev/docs/components/picture-in-picture-control): Toggle Picture-in-Picture mode for video playback. - [Playback Control](https://limeplay.winoffrg.dev/docs/components/playback-control): Play/pause toggle button for media playback. - [Playback Rate](https://limeplay.winoffrg.dev/docs/components/playback-rate): Dropdown selector for controlling playback speed. - [Player Layout](https://limeplay.winoffrg.dev/docs/components/player-layout): Composable structural containers for player UI. - [Seek Controls](https://limeplay.winoffrg.dev/docs/components/seek-controls): Skip forward or backward by a fixed offset. - [Timeline Control](https://limeplay.winoffrg.dev/docs/components/timeline-control): Composable seek slider for media playback position. - [Timeline Labels](https://limeplay.winoffrg.dev/docs/components/timeline-labels): Semantic time display components for elapsed, remaining, duration, and hover time. - [Volume Control](https://limeplay.winoffrg.dev/docs/components/volume-control): Composable slider for controlling media volume. - [Hooks](https://limeplay.winoffrg.dev/docs/hooks): Feature hooks and utilities for media player state management. - [use-asset](https://limeplay.winoffrg.dev/docs/hooks/use-asset): Asset playback orchestration for player, playlist, preloading, and source resolution. - [use-captions](https://limeplay.winoffrg.dev/docs/hooks/use-captions): Feature for managing captions and text tracks via Shaka Player. - [use-controls-visibility](https://limeplay.winoffrg.dev/docs/hooks/use-controls-visibility): Utility hook for auto-hiding player controls. - [use-idle](https://limeplay.winoffrg.dev/docs/hooks/use-idle): Utility hook for detecting user inactivity. - [use-interval](https://limeplay.winoffrg.dev/docs/hooks/use-interval): Utility hook for creating intervals with auto-cleanup. - [use-picture-in-picture](https://limeplay.winoffrg.dev/docs/hooks/use-picture-in-picture): Feature for toggling Picture-in-Picture mode. - [use-playback-rate](https://limeplay.winoffrg.dev/docs/hooks/use-playback-rate): Feature for controlling playback speed. - [use-playback-source](https://limeplay.winoffrg.dev/docs/hooks/use-playback-source): Normalizes block source props into useAsset playback state. - [use-playback](https://limeplay.winoffrg.dev/docs/hooks/use-playback): Core feature for managing media playback state and controls. - [use-player](https://limeplay.winoffrg.dev/docs/hooks/use-player): Low-level feature for Shaka Player initialization and manual load/preload control. - [use-playlist](https://limeplay.winoffrg.dev/docs/hooks/use-playlist): Feature for managing playback queue, navigation, shuffle, and repeat modes. - [use-seek](https://limeplay.winoffrg.dev/docs/hooks/use-seek): Utility hook for seeking forward or backward by a fixed offset. - [use-timeline](https://limeplay.winoffrg.dev/docs/hooks/use-timeline): Feature for managing playback position, seeking, and buffered ranges. - [use-track-events](https://limeplay.winoffrg.dev/docs/hooks/use-track-events): Utility hook for handling pointer events on slider tracks. - [use-volume](https://limeplay.winoffrg.dev/docs/hooks/use-volume): Feature for managing volume level and mute state. ## Optional - [Developer resources](https://limeplay.winoffrg.dev/developers): OpenAPI, agent documentation, API status, authentication details, and source links. - [OpenAPI specification](https://limeplay.winoffrg.dev/openapi.json): OpenAPI 3.1 description of Limeplay's public API. - [GitHub repository](https://github.com/winoffrg/limeplay): Project history, issues, and license. Use the CLI rather than copying implementation files from the repository.