A Chrome extension and backend service to securely summarize video content using local AI processing.
- Chrome extension for detecting and processing videos from various platforms
- Secure summarization of video content using local AI
- Support for YouTube and Olympus LMS video platforms
- Transcript generation and summarization
- Self-hosted backend for enhanced privacy
- Real-time job progress tracking in dashboard
- Cross-platform compatibility (Linux, macOS, Windows)
# Clone the repository
git clone https://github.com/yourusername/secure-video-summarizer.git
cd secure-video-summarizer
# Run the installation script
chmod +x install.sh
./install.sh
# Clone the repository
git clone https://github.com/yourusername/secure-video-summarizer.git
cd secure-video-summarizer
# Build and start the Docker containers
docker-compose up -d
# Clone the repository
git clone https://github.com/yourusername/secure-video-summarizer.git
cd secure-video-summarizer
# Create a virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Setup the Chrome extension
cd extension
npm install
npm run build
cd ..
# Start the backend service
cd backend
flask run --port=8081 --debug
-
Start the application using one of the startup scripts:
Shell script (Linux/macOS):
./start_svs_application.sh
Python script (Cross-platform):
python start_svs_application.py
The startup script provides multiple startup modes and configuration options. For more details, see the SVS_STARTUP_GUIDE.md.
-
Open your browser and navigate to:
- Dashboard:
http://localhost:8080/dashboard
- API Server:
http://localhost:8081
- Dashboard:
-
Use the dashboard to upload videos, create summaries, and track job progress.
-
When you're done, stop the application using one of the shutdown scripts:
Shell script (Linux/macOS):
./stop_svs_application.sh
Python script (Cross-platform):
python stop_svs_application.py
For shutdown details, see the SVS_SHUTDOWN_GUIDE.md.
The application can be configured using environment variables in a .env
file:
SECRET_KEY=your_secret_key
FLASK_ENV=production
OLLAMA_API_URL=http://localhost:11434/api
SVS now includes Python scripts for cross-platform compatibility:
start_svs_application.py
: Main startup script (replaces shell script)stop_svs_application.py
: Clean shutdown scriptbackend/run_backend.py
: Backend server launcherbackend/run_dashboard.py
: Dashboard server launcher
These scripts provide identical functionality to the original shell scripts but work on all platforms including Windows. Key features include:
- OS detection for platform-specific behavior
- Proper Python virtual environment management
- Process handling using Python's subprocess module
- Support for online and offline installation modes
- Comprehensive logging for troubleshooting
To install the Python dependencies for these scripts:
pip install -r requirements-system.txt
The application includes a robust job progress tracking system that allows you to:
- Monitor the status of video summarization jobs in real-time
- See detailed progress for each processing stage (audio extraction, transcription, summarization)
- View completion status and results through the dashboard interface
To test the progress tracking functionality:
# Generate a test video and run the summarization with progress tracking
chmod +x test_progress_tracking.sh
./test_progress_tracking.sh
For more details, see README-progress-tracking.md.
The SVS application includes intelligent startup and shutdown scripts for managing the application lifecycle:
-
Shell scripts (Linux/macOS):
start_svs_application.sh
: Interactive startup with multiple modesstop_svs_application.sh
: Clean shutdown and cleanup
-
Python scripts (Cross-platform including Windows):
start_svs_application.py
: Cross-platform interactive startupstop_svs_application.py
: Cross-platform clean shutdownbackend/run_backend.py
: Backend server launcherbackend/run_dashboard.py
: Dashboard server launcher
All scripts provide:
- Automatic dependency installation
- Progress tracking
- Multiple startup modes
- Offline installation support
For comprehensive startup instructions, see the SVS_STARTUP_GUIDE.md. For shutdown instructions, see the SVS_SHUTDOWN_GUIDE.md.
SVS supports offline installation for environments without internet access:
-
On a machine with internet, run:
./package_dependencies.sh
This packages all dependencies with exact versions locked to those in requirements.lock.
-
Transfer the entire directory to the target machine
-
On the target machine, use one of these methods:
- Run
./install_offline.sh
- Run
python start_svs_application.py --offline
- Or select "Offline installation" option when running the interactive script
- Run
All dependencies are installed with strict version control to prevent conflicts. For complete offline installation instructions, see the SVS_OFFLINE_INSTALL_GUIDE.md.
SVS includes an automatic update checking system:
- During Cold Start, the application checks for approved updates from the official repository
- Requires internet connection (gracefully handles offline situations with a countdown)
- Only applies updates that have been tested and approved by the SVS team
- Provides detailed information about what will be updated before applying changes
You can configure the update source by setting these environment variables:
# Set these before running the startup script
export SVS_REPO_URL="https://raw.githubusercontent.com/secure-video-summarizer/SVS"
export SVS_BRANCH="main"
export SVS_REQ_PATH="backend/requirements.lock"
This ensures your installation stays up-to-date with the latest security patches and bug fixes while maintaining stability.
- YouTube
- Olympus LMS
MIT License