Skip to content

zeynepyavuzsf/loom-video-extractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

35 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

preview

πŸ“Ή LoomVault Archiver – Intelligent Loom Video Preservation Suite

Overview

In the digital workshop of modern communication, Loom videos have become the threaded needles stitching together asynchronous collaboration. Yet these visual messages often live precariously on remote servers, subject to link rot, account changes, or platform deprecation. LoomVault Archiver is your dedicated local loomβ€”a sophisticated, browser-integrated preservation engine that captures, organizes, and transforms your Loom recordings into durable, self-contained assets. Think of it as a personal archival library for every face-to-screen moment you've ever shared. Whether you're a project manager preserving client walkthroughs, an educator saving lecture captures, or a creator curating a demo portfolio, this tool ensures your Loom history remains accessible, searchable, and sovereign.

This repository is not a simple scraping tool; it's a thoughtful archival companion. It respects platform integrity while granting you rightful ownership of the content you've created. Every download is handled with metadata preservation, format flexibility, and organizational intelligence.


🧩 Key Capabilities

  • Intelligent Content Extraction – Parses Loom page structure to locate the highest-quality video source, handling dynamically loaded content and progressive web app patterns.
  • Batch Archival Workflows – Queue multiple recordings from a session, playlist, or search results with a single orchestration command. Think of it as a loom loom, weaving together multiple threads into a single textile.
  • Metadata Preservation – Automatically captures title, upload timestamp, creator context, duration, and description. Your archive becomes a searchable database, not just a folder of unsorted clips.
  • Adaptive Format Delivery – Choose between original MP4, compressed HEVC for space efficiency, or audio-only M4A for reference playback. No transcoding server needed; processing happens locally on your machine.
  • Responsive Dashboard Interface – A lightweight web-based control panel that adapts to any screen size, from ultrawide monitors to tablet-side reference checks. Manage your archive from the browser, in the browser.
  • Multilingual Ingestion Support – LoomVault understands content metadata in 12 languages, correctly handling character encoding and date formatting for international teams.
  • 24/7 Automated Background Processing – Set up a watch folder or use the browser extension's silent mode. Recordings queued during the day process overnight, ready for your morning review.

Download

πŸš€ Getting Started with LoomVault

Prerequisites

Your system should have a modern web browser (Chrome 115+, Firefox 128+, or Edge 120+) with extension support. No server-side installation is requiredβ€”the entire archival engine operates client-side using WebAssembly and IndexedDB for storage management. The extension occupies approximately 48MB of local storage for its runtime components.

Initial Configuration

Once the extension is pinned to your toolbar, navigate to any Loom video page. You'll notice a small "Vault Entry" icon overlay appear in the top-right corner of the video player. Clicking it opens the Archival Dashboardβ€”a sliding panel that reveals:

  • Current video metadata preview
  • Quality options (source / high / medium / audio-only)
  • Format choice (MP4 / HEVC / M4A)
  • Tag input for multi-dimensional organization
  • Destination folder selection (creates a smart-naming structure: ClientName/ProjectName/Date_VideoTitle.mp4)

Select your preferences and click "Secure to Vault". The video begins downloading in the background while you continue browsing. A subtle chime confirms successful archival.

Batch Operations

For power users, the Weaver Mode (accessible via the extension popup) allows you to define rules. For example:

  • "Download all Loom videos from this Trello board that are newer than 7 days and contain 'sprint review' in the title."
  • "Archive every recording shared with me today, organized by sender email domain."

The engine processes these rules using a local pattern-matching engine that never transmits your data externally.


πŸ—‚οΈ Project Structure & Internals

loomvault-archiver/
β”œβ”€β”€ extension/                 # Browser extension core
β”‚   β”œβ”€β”€ manifest.json          # Permissions and service worker definitions
β”‚   β”œβ”€β”€ content/               # Content scripts for Loom page interaction
β”‚   β”œβ”€β”€ popup/                 # Quick-action popup UI
β”‚   └── dashboard/             # Full Archival Dashboard (HTML/CSS/JS)
β”œβ”€β”€ engine/                    # Download and processing core
β”‚   β”œβ”€β”€ extractor.js           # Video source identification and metadata parsing
β”‚   β”œβ”€β”€ queue.js               # Prioritized download queue with retry logic
β”‚   β”œβ”€β”€ transcoder.wa.wasm     # Local WebAssembly transcoder for format conversion
β”‚   └── storage.js             # IndexedDB wrapper with deduplication hashing
β”œβ”€β”€ docs/                      # Full documentation suite
β”‚   β”œβ”€β”€ api.md                 # Public API for programmatic access
β”‚   β”œβ”€β”€ troubleshooting.md     # Common edge cases and solutions
β”‚   └── deployment.md          # Self-hosted dashboard server (optional)
β”œβ”€β”€ tests/                     # Integration and unit tests
β”œβ”€β”€ LICENSE                    # MIT License
└── CONTRIBUTING.md            # Guidelines for community contributors

Each component is designed with loose coupling and high cohesion. The extension communicates with the engine via a typed message bus, allowing any part of the system to be swapped or upgraded independently.


✨ Feature Highlights (Expanded)

🧠 Smart Format Handling

The transcoder adapts to your system's capabilities. If it detects an M-series Apple processor, it utilizes hardware-accelerated encoding for HEVC output. On systems with discrete NVIDIA GPUs, NVENC is leveraged for whisper-quiet background conversion. The result is a 60% reduction in file size compared to the original stream with imperceptible quality loss for typical talking-head and screen-share content.

🌐 Multilingual Metadata Parsing

LoomVault correctly interprets date formats from English ("January 15, 2026"), Japanese ("2026εΉ΄1月15ζ—₯"), German ("15. Januar 2026"), and nine other locales. Video titles containing right-to-left scripts (Arabic, Hebrew) are stored with proper Unicode bidirectional markers, ensuring file names are universally readable across operating systems.

πŸ” Advanced Search & Filtering

The dashboard includes a search bar that supports:

  • title:"sprint review" – Exact phrase matching
  • creator:alice – Filter by creator name or email
  • duration:<5min – Short clips only
  • date:>2026-01-01 – Recent recordings
  • tag:client-x – Custom tag matching

Boolean operators and grouping are supported: (tag:demo OR tag:walkthrough) AND duration:>10min

πŸ“Š Archive Health Monitoring

The vault dashboard provides a health overview:

  • Total archived recordings: 1,247
  • Storage used: 38.4 GB / 100 GB quota (configurable)
  • Deduplication ratio: 1.17x (saved 6.2 GB through intelligent hash matching)
  • Pending downloads: 3 (queued for off-peak processing at 02:00 local time)
  • Failed archivals: 0 (with 7-day success rate of 99.4%)

πŸ› οΈ Technical Architecture & Design Philosophy

LoomVault operates on the principle of local-first sovereignty. Your data never traverses a third-party server. The extraction engine sits inside the browser's extension sandbox, communicating only with Loom's public CDN endpoints to retrieve the video stream you have authorized access to view. This design ensures:

  1. Privacy by Architecture – No proxy, no intermediary, no logging of your activities.
  2. Security by Isolation – The engine cannot access other websites' data without explicit user interaction on the Loom domain.
  3. Resilience by Decentralization – If Loom changes its page structure tomorrow, the extraction selector engine will flag a mismatch and enter a maintenance mode, displaying a diff of the changes for the community to patch. No single point of failure.

The queue manager uses a priority-weighted round-robin algorithm. Videos you explicitly click "Secure to Vault" on receive priority 1 (instant processing). Batch rules and watch folders are processed at priority 2 (opportunistic background). Failed downloads are retried up to three times with exponential backoff (30 seconds, 2 minutes, 10 minutes).


⚠️ Disclaimer

LoomVault Archiver is designed for personal archival and backup purposes of content you have lawfully accessed or created. Users are solely responsible for ensuring that their use complies with Loom's Terms of Service and applicable copyright laws in their jurisdiction. This tool does not circumvent any authentication mechanisms, digital rights management (DRM), or paywalls. It operates exclusively on video streams you are already authorized to view and possess the right to download. The maintainers of this repository assume no liability for misuse or unauthorized redistribution of archived content. Always respect the intellectual property rights of content creators.


πŸ“„ License

This project is licensed under the MIT License – a permissive open-source license that allows you to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software, provided that the original copyright notice and permission notice appear in all copies or substantial portions of the software.

View Full License


🀝 Contributing

We welcome contributions that align with the project's mission of user-empowering archival without infringement. Whether you're improving the extraction engine's robustness, adding new language support for metadata parsing, or refining the dashboard's accessibility, your pull requests are valued. Please review our CONTRIBUTING.md for coding standards, test expectations, and the code of conduct.


πŸ“¬ Support

Community support is available via the repository's Discussions tab. For urgent inquiries, the #support channel in our community chat (linked in the repository description) has active members and maintainers across time zones. Our goal is a 4-hour response time for verified questions, 24/7/365 – because your archive shouldn't wait.


🏁 Final Notes

LoomVault Archiver was born from a simple observation: the videos we create today are the documentation our future selves will search for. We build tools that honor that future. Every line of code prioritizes durability, discoverability, and user agency. Your Loom library is not merely a collection of URLsβ€”it's a living archive of decisions, explanations, and human connection. We're here to help you keep it safe.


Download