SkillAgentSearch skills...

Cap

Open source Loom alternative. Beautiful, shareable screen recordings.

Install / Use

/learn @CapSoftware/Cap

README

<p align="center"> <p align="center"> <img width="150" height="150" src="https://github.com/CapSoftware/Cap/blob/main/apps/desktop/src-tauri/icons/Square310x310Logo.png" alt="Logo"> </p> <h1 align="center"><b>Cap</b></h1> <p align="center"> The open source Loom alternative. <br /> <a href="https://cap.so"><strong>Cap.so »</strong></a> <br /> <br /> <b>Downloads for </b> <a href="https://cap.so/download">macOS & Windows</a> <br /> </p> </p> <br/>

Open Bounties

Cap is the open source alternative to Loom. It's a video messaging tool that allows you to record, edit and share videos in seconds.

<img src="https://raw.githubusercontent.com/CapSoftware/Cap/refs/heads/main/apps/web/public/landing-cover.png"/>

Self Hosting

Quick Start (One Command)

git clone https://github.com/CapSoftware/Cap.git && cd Cap && docker compose up -d

Cap will be running at http://localhost:3000. That's it!

Note: Login links appear in the logs (docker compose logs cap-web) since email isn't configured by default.

Other Deployment Options

| Method | Best For | |--------|----------| | Docker Compose | VPS, home servers, any Docker host | | Railway | One-click managed hosting | | Coolify | Self-hosted PaaS (use docker-compose.coolify.yml) |

Deploy on Railway

Production Configuration

For production, create a .env file:

CAP_URL=https://cap.yourdomain.com
S3_PUBLIC_URL=https://s3.yourdomain.com

See our self-hosting docs for full configuration options including email setup, AI features, and SSL.

Cap Desktop can connect to your self-hosted instance via Settings → Cap Server URL.

Monorepo App Architecture

We use a combination of Rust, React (Next.js), TypeScript, Tauri, Drizzle (ORM), MySQL, TailwindCSS throughout this Turborepo powered monorepo.

A note about database: The codebase is currently designed to work with MySQL only. MariaDB or other compatible databases might partially work but are not officially supported.

Apps:

Packages:

  • ui: A React Shared component library.
  • utils: A React Shared utility library.
  • tsconfig: Shared tsconfig configurations used throughout the monorepo.
  • database: A React and Drizzle ORM Shared database library.
  • config: eslint configurations (includes eslint-config-next, eslint-config-prettier other configs used throughout the monorepo).

License:

Portions of this software are licensed as follows:

  • All code residing in the cap-camera* and scap-* families of crates is licensed under the MIT License (see licenses/LICENSE-MIT).
  • All third party components are licensed under the original license provided by the owner of the applicable component
  • All other content not mentioned above is available under the AGPLv3 license as defined in LICENSE

Contributing

See CONTRIBUTING.md for more information. This guide is a work in progress, and is updated regularly as the app matures.

Analytics (Tinybird)

Cap uses Tinybird to ingest viewer telemetry for dashboards. The Tinybird admin token (TINYBIRD_ADMIN_TOKEN or TINYBIRD_TOKEN) must be available in your environment. Once the token is present you can:

  • Provision the required data sources and materialized views via pnpm analytics:setup. This command installs the Tinybird CLI (if needed), runs tb login when a .tinyb credential file is missing, copies that credential into scripts/analytics/tinybird, and finally executes tb deploy --allow-destructive-operations --wait from that directory. It synchronizes the Tinybird workspace to the resources defined in scripts/analytics/tinybird, removing any other datasources/pipes in that workspace.
  • Validate that the schema and materialized views match what the app expects via pnpm analytics:check.

Both commands target the workspace pointed to by TINYBIRD_HOST (defaults to https://api.tinybird.co). Make sure you are comfortable with the destructive nature of the deploy step before running analytics:setup.

View on GitHub
GitHub Stars17.5k
CategoryDevelopment
Updated10m ago
Forks1.3k

Languages

TypeScript

Security Score

85/100

Audited on Mar 24, 2026

No findings