Overview
Cap is an open source and privacy-focused alternative to Loom. It’s a video messaging tool built with a modern stack including Rust, React, Next.js, and Tauri.Prerequisites
Before setting up Cap, ensure you have the following installed:- Node.js version 20 or higher
- Rust version 1.88.0 or higher
- pnpm version 8.10.5 or higher (recommended: 10.5.2)
- Docker (OrbStack recommended for macOS)
Platform-Specific Requirements
Windows:- LLVM
- Clang
- VCPKG
- CMake
pnpm cap-setup does not yet install these platform-specific dependencies automatically.Installation
1. Clone the Repository
2. Install Dependencies
3. Setup Native Dependencies
Install native dependencies including FFmpeg:4. Configure Environment
Generate a.env file configured for your environment:
- Ask which apps you intend to run
- Configure Docker for local S3 (MinIO) and MySQL
- Allow you to provide custom overrides
5. Setup Database
Generate and push database schema:Running Cap
Run Both Desktop and Web
@cap/desktop and @cap/web together.
Run Desktop Only
Run Web Only
macOS Permissions
When running@cap/desktop from a terminal on macOS, permissions (screen recording, microphone, etc.) apply to the terminal application, not the Cap app.
Recording Storage Locations
Your recordings are stored in the following locations: macOS:Docker Services
When runningpnpm dev or pnpm dev:web, Docker will automatically start:
- MySQL database
- MinIO S3 server
Database Management
Open Drizzle Studio to view and manage your database:Quality Tools
Run code quality checks:Next Steps
Architecture
Learn about the monorepo structure and codebase organization
Contributing
Guidelines for contributing to Cap