Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

ogndgr/ClipSense

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClipSense

AI-assisted, local-first clip selection suite for creators and editors.

ClipSense Logo

Backend Frontend Runtime Export

ClipSense Workspace

ClipSense turns long, messy footage into timeline-ready selects fast.
You ingest footage, run profile-based analysis, review ranked candidates, and export directly to your NLE.

Why ClipSense

  • Local-first workflow: your raw media stays on your machine.
  • Profile-driven analysis: purpose-specific scoring and tags.
  • Editor-friendly review loop: accept/reject, reorder, export.
  • Zero-copy ingest option: analyze host files without re-uploading huge videos.
  • NLE-ready outputs: JSON, EDL, and FCPXML.

Project Purposes and Analysis Profiles

The analysis profile menu is dynamic by project purpose.

Project Purpose Available Profiles Core Tags
vlog_editing main_vlog, viral_vlog_shorts hook, reaction, payoff, transition, filler, discard
live_stream_highlights main_vlog, viral_stream_shorts rage_quit, loud_reaction, laugh_attack, chat_interaction, filler, discard
movie_trailer_cut trailer_cinematic, trailer_dialogue Cinematic: action_peak, tension, jump_scare, visual_spectacle, discard Dialogue: emotional_beat, one_liner, plot_reveal, whisper, discard

Workflow

  1. Create a project and pick a purpose.
  2. Ingest footage (upload or source path).
  3. Run analysis with the profile shown for that purpose.
  4. Review candidates in Candidate Rack and accept/reject.
  5. Reorder accepted clips in Timeline Dock.
  6. Export to your editing workflow.

Installation (Docker)

Requirements (All Platforms)

  • Git
  • Docker Desktop (macOS/Windows) or Docker Engine + Compose plugin (Linux)
  • Optional: Google AI Studio key for Gemini-powered scoring

1. Clone

git clone https://github.com/ogndgr/ClipSense.git
cd ClipSense

2. Configure environment

macOS / Linux (bash, zsh)

cp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env.local

Windows (PowerShell)

Copy-Item apps/api/.env.example apps/api/.env
Copy-Item apps/web/.env.example apps/web/.env.local
if (-not $env:HOME) { $env:HOME = $env:USERPROFILE }
$env:PWD = (Get-Location).Path

3. Build and run

docker compose up -d --build

4. Verify installation

docker compose ps
curl http://localhost:8000/health

Expected:

  • docker compose ps shows both clipsense-api and clipsense-web as Up.
  • curl returns {"status":"ok"}.

5. Open

  • Web: http://localhost:3000
  • API: http://localhost:8000
  • API Docs: http://localhost:8000/docs

Platform Notes

macOS

  • Docker Desktop or OrbStack both work.
  • If your media is on external drives, uncomment /Volumes lines in docker-compose.yml.

Linux

  • If Docker permission is denied, run:
sudo usermod -aG docker $USER
newgrp docker

Windows

  • Use Docker Desktop with WSL2 backend enabled.
  • If you analyze files outside the repo (for source path mode), make sure those drives/folders are shared in Docker Desktop.

Export Formats

  • json for internal timeline exchange
  • edl for broad NLE compatibility
  • fcpxml for Final Cut Pro workflows

Configuration

Key variables in apps/api/.env:

Variable Default Description
ALLOW_CLOUD_AI true Set false for local-only heuristic analysis
GOOGLE_API_KEY empty Gemini API key
GEMINI_MODEL gemini-3-pro-preview Gemini model name
MAX_UPLOAD_MB 20480 Max upload size (MB)
FCPXML_PATH_MAP_FROM /app/data Path in container
FCPXML_PATH_MAP_TO host path Path on host machine

If you use external drives on macOS, enable /Volumes mapping in docker-compose.yml.

Manual Local Run

API (FastAPI)

cd apps/api
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
uvicorn app.main:app --reload --port 8000

Web (Next.js)

cd apps/web
npm install
cp .env.example .env.local
npm run dev

Architecture

  • apps/api: ingest, analysis jobs, candidate scoring, playback, exports
  • apps/web: dashboard and review console
  • memory-bank: internal schema and architecture notes

Notes

  • If UI changes do not appear after code updates, rebuild containers:
docker compose up -d --build

License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). See LICENSE for the full text.

About

Local-first AI clip selection suite for creators and editors. Analyze long footage, review ranked candidates, and export timeline-ready selects (JSON/EDL/FCPXML).

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors