MCPcopy Index your code
hub / github.com/clipable/clipable

github.com/clipable/clipable @1.0.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0.6 ↗ · + Follow
515 symbols 1,099 edges 54 files 217 documented · 42%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<img width="600" src="https://github.com/clipable/clipable/raw/1.0.6/assets/logo.svg" alt="Clipable Icon">

Simple video hosting.   For everyone.

<a href="https://github.com/clipable/clipable"><img src="https://img.shields.io/github/v/release/clipable/clipable?color=%23ff00a0&include_prereleases&label=version&sort=semver&style=flat-square"></a>
&nbsp;
<a href="https://github.com/clipable/clipable"><img src="https://img.shields.io/badge/built%20with-Go-blue?style=flat-square"></a>
&nbsp;
<a href="https://github.com/clipable/clipable"><img src="https://img.shields.io/badge/built%20with-Typescript-blue?style=flat-square"></a>
&nbsp;
<a href="https://github.com/clipable/clipable/actions"><img src="https://img.shields.io/github/actions/workflow/status/clipable/clipable/images.yml?style=flat-square"></a>
&nbsp;
<a href="https://github.com/clipable/clipable"><img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/clipable/clipable?style=social"></a>

  What is Clipable?

Clipable is a self-hosted video sharing platform that provides an easy and efficient way for individuals and organizations to host, share, and manage their video content. Inspired by popular platforms like Streamable and YouTube, Clipable offers a simple and intuitive user interface that makes it easy for anyone to upload, share, and watch videos with ease. With a focus on privacy and security, Clipable provides an alternative for those looking for a more controlled and self-reliant video hosting solution. Whether you're a content creator, a business owner, or just someone looking to share videos with friends and family, Clipable provides all the features you need to manage your video content with confidence.

Live, view-only demo here.

View the features, the latest releases, the product roadmap, and documentation.

  Contents

  Features

  • [x] Responsive, In-Browser upload
  • [x] Configurable video quality profiles
  • [x] S3 compatible video storage
  • [x] User accounts
  • [x] Fuzzy video searching
  • [x] Intuitive and simple user interface
  • [x] Well-documented and accessible REST API
  • [x] FFmpeg based encoding accepts all well known video formats
  • [x] Simple docker based deployment

  Run using Docker

Getting started is easy with Docker! We have a fully configured docker-compose.yml
- Simply copy it and run docker compose up -d.
- The site will then be accessible at http://localhost/.
- You can also view documentation about all of our environment variables here.

  Contributing

TODO

  License

Clipable is licensed under the BSL 1.1 license, converting to the open-source GNU General Public License v2.0 or later after 4 years. If you'd like to learn more, you can do so here.

Extension points exported contracts — how you extend this code

Users (Interface)
Users Comment for linter [2 implementers]
backend/services/interfaces.go
NullType (Interface)
NullType is a helper interface used in NullCodec methods
backend/modelsx/modelsx.go
SchemaMigrationHook (FuncType)
SchemaMigrationHook is the signature for custom SchemaMigration hook methods
backend/models/schema_migrations.go
UserContext (Interface)
(no doc)
frontend/src/context/user-context.tsx
Clips (Interface)
NewGroup Comment for linter [2 implementers]
backend/services/interfaces.go
ClipHook (FuncType)
ClipHook is the signature for custom Clip hook methods
backend/models/clips.go
Props (Interface)
(no doc)
frontend/src/shared/clip-card.tsx
ObjectStore (Interface)
(no doc) [2 implementers]
backend/services/interfaces.go

Core symbols most depended-on inside this repo

Handler
called by 16
backend/routes/middleware.go
Marshal
called by 16
backend/modelsx/clip.go
Add
called by 9
backend/modelsx/querybuilder.go
EQ
called by 9
backend/models/clips.go
vars
called by 7
backend/routes/middleware.go
Find
called by 7
backend/services/interfaces.go
WriteHeader
called by 6
backend/routes/middleware.go
Update
called by 6
backend/services/interfaces.go

Shape

Method 311
Function 118
Struct 56
Interface 15
TypeAlias 10
FuncType 3
Enum 2

Languages

Go89%
TypeScript11%

Modules by API surface

backend/models/clips.go99 symbols
backend/models/user.go56 symbols
backend/models/schema_migrations.go51 symbols
backend/services/mock/interfaces.go36 symbols
backend/services/interfaces.go34 symbols
backend/routes/middleware.go27 symbols
backend/modelsx/modelsx.go24 symbols
frontend/src/shared/api.ts14 symbols
backend/services/db/clip.go13 symbols
backend/modelsx/user.go11 symbols
backend/services/object/store.go10 symbols
backend/services/db/user.go10 symbols

For agents

$ claude mcp add clipable \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact