Jelly-Clipper is an open-source web application that allows Jellyfin users to easily create, share, and manage video clips from their Jellyfin media library
Important
This is my first open source project, and it was very much a hacky "lets try to make it work somehow" thing. So absolutely feel free to contribute and fix all the stuff I did wrong :D
- Simple Clip Creation: Paste a URL and create clips with ease
- Seamless Jellyfin Integration: Works directly with your self-hosted Jellyfin server
- User Authentication: Clips are only accessible for other users of the Jellyfin instance
- Easy Sharing: Generate shareable links for your favorite moments
- User-Friendly(-ish) Interface: Intuitive design inspired by YouTube and Twitch clip functionality
Jelly-Clipper is easily hostable with docker compose:
services:
jelly-clipper:
image: ghcr.io/arnolicious/jelly-clipper:latest
container_name: jelly-clipper
ports:
- 3000:3000
volumes:
# Path to the db directory, in which the sqlite db file will live
- <MY_DB_PATH>:/app/db
# Path to the videos directory.
# This will store all the clips permanently and the original files temporarily,
# so it might get a lil big
- <MY_VIDEOS_PATH>:/app/assets/videos
restart: unless-stopped
environment:
# Timezone to have the cleanup cron job working as expected
- TZ=Europe/Berlin
# Full URL with Protocol and Port, where the application will live
- JELLY_CLIPPER_ORIGIN=http://localhost:3000
# with a reverse proxy it could be something like:
# - JELLY_CLIPPER_ORIGIN=https://clip.jellyfin.mydomain.test
- SvelteKit
- Svelte 5
- TypeScript
- Bun
- Drizzle ORM
- Node.js v20
- Bun
- Jellyfin server for local development
-
Clone the repository:
git clone https://github.com/arnolicious/jelly-clipper.git cd jelly-clipper
-
Install dependencies:
bun install
-
Run the development server:
bun dev
Contributions are welcome! Please check out our Contribution Guidelines.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Basic Prototype
- Implement sound (lol)
- Download Progress Indicator
- Clipping UI
- Create browser extension
- Improve mobile responsiveness
Distributed under the MIT License. See LICENSE
for more information.
Disclaimer: This project is not officially affiliated with Jellyfin. It is a community-driven project created to enhance the Jellyfin experience.