myspoti
Native Android client for Spotify, built with Jetpack Compose
Search your entire video library in plain English and jump straight to the footage you're looking for. Local-first. $249, once.
MediaTypeScript · PythonGitHub @IliasHadOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Local-first Video Knowledge Base. Index your video library with multi-modal analysis (YOLO, DeepFace, Whisper), search semantically via natural language, Docker-ready.
Taken from the repository README
Loading the full README.
Read the full README ↗Orcah Studio (formerly Edit Mind) is a self-hosted video knowledge base. It indexes your videos — including transcription, frame analysis, and multi-model embedding — then lets you search videos or individual scenes with natural language.
Development Status: Edit Mind is currently in active development and not yet production-ready. Expect incomplete features and occasional bugs. We welcome contributors to help us reach v1.0!
Note on the name: Orcah Studio was previously called Edit Mind. The repository, package names, and some historical material still use the former name while the rename is rolled out.
Click to watch a walkthrough of Orcah Studio's core features.
| Area | Technology |
|---|---|
| Monorepo | pnpm workspaces |
| Containerization | Docker, Docker Compose |
| Web Service | React Router V7, TypeScript, Vite |
| Background Jobs Service | Node.js, Express.js, BullMQ |
| ML Sevice | Python, PyAV, PyTorch, OpenAI Whisper, Google Gemini or Ollama (Used for NLP) |
| Vector Database | ChromaDB |
| Relational DB | PostgreSQL (via Prisma ORM) |
The self-hosted Orcah Studio edition uses Docker Compose to run everything in containers.
Click to watch a walkthrough of the self-hosted setup guide.
With Docker Desktop open, paste this command into Terminal (macOS/Linux) or Git Bash/WSL (Windows):
bash <(curl -fsSL https://raw.githubusercontent.com/IliasHad/edit-mind/main/install.sh)
The installer asks where your videos are stored and whether to use local Ollama, Gemini, or skip AI setup for now. It creates the required configuration, then starts Orcah Studio. Your library remains on your computer; the installer only gives Docker access to the folder you choose.
Prefer to configure every setting by hand? Follow the manual setup steps below.
mkdir edit-mind
cd edit-mind
Important: Before proceeding, configure Docker to access your media folder.
macOS/Windows:
/Users/yourusername/Videos)Linux: File sharing is typically enabled by default.
The self-hosted edition uses a two-file environment configuration:
.env - Your personal configuration (required).env.system - System defaults (required)Copy the example file and customize it:
curl -L https://raw.githubusercontent.com/IliasHad/edit-mind/refs/heads/main/.env.example -o .env
curl -L https://raw.githubusercontent.com/IliasHad/edit-mind/refs/heads/main/.env.system.example -o .env.system
curl -L https://raw.githubusercontent.com/IliasHad/edit-mind/refs/heads/main/docker-compose.yml -o docker-compose.yml
If you have NVIDIA GPU, use docker-compose.cuda.yml file instead
curl -L https://raw.githubusercontent.com/IliasHad/edit-mind/refs/heads/main/docker-compose.cuda.yml -o docker-compose.yml
Edit the .env file and configure these critical settings:
# 1. SET YOUR VIDEO FOLDER PATH (REQUIRED)
# Must match the path you added to Docker File Sharing
HOST_MEDIA_PATH="/Users/yourusername/Videos"
# 2. CHOOSE AI MODEL (Pick one option)
# Option A: Use Ollama (more private, requires model download)
USE_OLLAMA_MODEL="true"
OLLAMA_HOST="http://172.17.0.1"
OLLAMA_PORT="11434"
OLLAMA_MODEL="qwen2.5:7b-instruct"
# Please make sure to run ollama server first using this command
# OLLAMA_HOST=0.0.0.0:11434 ollama serve
# and pull the ollama model first
# ollama pull qwen2.5:7b-instruct
# Option B: Use Gemini API (requires API key)
USE_GEMINI="true"
GEMINI_API_KEY="your-gemini-api-key-from-google-ai-studio"
# Option C: Skip AI setup for now (AI-powered features remain unavailable)
USE_OLLAMA_MODEL="false"
USE_GEMINI="false"
# 3. GENERATE SECURITY KEYS (REQUIRED)
# Generate with: openssl rand -base64 32
ENCRYPTION_KEY="your-random-32-char-base64-key"
# Generate with: openssl rand -hex 32
SESSION_SECRET="your-random-session-secret"
Quick Key Generation:
# Generate ENCRYPTION_KEY
openssl rand -base64 32
# Generate SESSION_SECRET
openssl rand -hex 32
Start all services with a single command:
docker compose up
Once all services are running (look for "ready" messages in logs):
If you're using Safari, use http://127.0.0.1:3745
http://localhost:3745http://localhost:3745/app/settingsHOST_MEDIA_PATH locationRescanA huge thank you to the r/selfhosted community on Reddit for their amazing support, valuable feedback, and encouragement.
Original discussion: https://www.reddit.com/r/selfhosted/comments/1ogis3j/i_built_a_selfhosted_alternative_to_googles_video/
We welcome contributions of all kinds! Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
Follow the steps below if you want to extend the app functionality or fix bugs.
git clone https://github.com/iliashad/edit-mind
cd edit-mind
cp .env.system.example docker/.env.system
cp .env.example docker/.env.dev
pnpm install
cd docker
docker-compose -f docker-compose.dev.yml up --build
This repository is the self-hosted edition. If you prefer a native macOS app, see orcah.app. GitHub users can use code GITHUB for 5% off at checkout.
Watch Orcah Studio, then known as Edit Mind, featured at Syntax.fm (starts at 41:21)
Watch Orcah Studio, then known as Edit Mind, presented at Twelve Labs (starts at 21:12)
This project is licensed under the AGPL-3.0 License - see the LICENSE.md file for details.