Skip to content

FahadBinHussain/imgvault

Repository files navigation

ImgVault Logo

ImgVault

Context-first media vault for images, videos, and links.

Build Status Latest Release License GitHub Stars

What Is ImgVault

ImgVault is a production-ready media vault ecosystem:

  • Browser extension for fast capture and metadata-first workflows
  • Native host companion for advanced download and local file handoff
  • Web app for authenticated gallery, share links, and remote access

The core idea is simple: media is not useful without context. ImgVault stores the source, metadata, and organization data so your vault stays searchable and reusable over time.

Key Features

Capture and Save

  • Save images from web pages via context menu
  • Save links with metadata and preview support
  • Process video workflows through native host integration

Metadata and Organization

  • Rich metadata fields (source URLs, page title, tags, dimensions, type, timestamps, hashes)
  • For Noobs and For Nerds detail views
  • Collections support
  • Post-upload metadata editing

Integrity and Safety

  • Duplicate detection using contextual and hash-based checks
  • Trash and restore flow
  • Clear technical field visibility for debugging and auditing

Hosting and Delivery

  • Image hosts: Pixvid, ImgBB
  • Video hosts: Filemoon, UDrop
  • Release assets published through GitHub Actions

Comparison

means the tool is built around that capability. partial means it has a related feature, but not the same workflow or depth. - means it is not the point of that tool.

Capability ImgVault Eagle Raindrop.io Immich Hydrus Network Google Photos
Browser capture from web pages - partial partial
Source URL, page title, and context-first metadata partial partial partial partial
Image/video/link records in one vault partial
Rich technical fields for debugging/auditing partial partial partial partial
Hash/context duplicate detection partial partial
Collections/tags/search
Native host or desktop companion - - partial
Authenticated web gallery and share links - -
Mobile camera backup - - - -
AI face/object/semantic search - partial partial
Open-source, self-modifiable stack - - -

The closest product overlap is Eagle for design/reference collection and Raindrop.io for bookmark-style capture. Immich and Google Photos are much stronger for mobile photo backup, faces, albums, and polished gallery behavior. Hydrus is stronger for serious local tagging, duplicate workflows, and large personal media libraries.

ImgVault's current niche is the bridge: browser capture, source-aware metadata, local/native handoff, hosted gallery/share flows, and configurable upload providers in one repo. The obvious backlog is mobile backup, stronger AI search, better bulk tagging, and a more mature desktop library experience.

Screenshots

ImgVault Screenshot 9 ImgVault Screenshot 4 ImgVault Screenshot 7

ImgVault Screenshot 2 ImgVault Screenshot 1 ImgVault Screenshot 5

ImgVault Screenshot 6 ImgVault Screenshot 3 ImgVault Screenshot 8

Repository Layout

Path Purpose
nextgen-extension/ Main browser extension (React + Vite + Tailwind + DaisyUI)
native-host/ Native messaging companion (Rust/Tauri build path)
web/ Next.js web platform (auth, gallery, share, settings APIs)
docs/ Architecture notes, workflows, gotchas, and API docs
old extension/ Legacy extension code kept for reference

Downloads

Production artifacts are published in GitHub Releases:

  • Extension ZIP
  • Extension CRX
  • Native Host EXE

Use:

Quick Start

1) Clone

git clone https://github.com/FahadBinHussain/imgvault.git
cd imgvault

2) Build Extension

cd nextgen-extension
pnpm install
pnpm build

Output:

  • nextgen-extension/dist

Load in browser:

  1. Open chrome://extensions (or Edge equivalent)
  2. Enable Developer Mode
  3. Click Load unpacked
  4. Select nextgen-extension/dist

3) Build Native Host (Windows)

cd native-host
pnpm install
pnpm run cargo:build

Optional portable packaging:

pnpm portable:build

4) Run Web App

cd web
pnpm install
Copy-Item .env.example .env
pnpm dev

Web app env variables are documented in:

Production Build and Release Flow

Workflow:

Current behavior:

  • Push and release events trigger extension + native host build jobs
  • Extension artifacts include both .zip and .crx
  • Native host artifact includes .exe
  • Artifacts are attached to GitHub releases

Core Workflows

Save Image

  1. Right-click image
  2. Save to ImgVault
  3. Review metadata
  4. Upload to configured hosts
  5. Persist record in vault storage

Save Video

  1. Start host-assisted download
  2. Save to local Videos folder
  3. Auto-handoff into gallery upload flow
  4. Upload to video hosts
  5. Persist full metadata and host URLs

Save Link

  1. Use link/page save action
  2. Capture URL, title, and preview metadata
  3. Store as first-class vault item

Stack

Extension

  • React 18
  • Vite 5
  • Tailwind CSS
  • DaisyUI
  • Framer Motion

Web

  • Next.js App Router
  • NextAuth
  • Drizzle ORM
  • Neon Postgres
  • Tailwind CSS + DaisyUI

Native Host

  • Rust (Tauri build target)
  • Native messaging integration

Documentation

Contributing

Contributions are welcome.

  1. Fork the repo
  2. Create a feature branch
  3. Make focused changes with clear commit messages
  4. Open a pull request with test/build notes

For local verification, use:

cd nextgen-extension
pnpm build

and

cd web
pnpm build

License

MIT License. See LICENSE.

Community

Built with love by people who care about fast workflows, clean metadata, and long-term usability.

Contributions are always welcome:

  • Bug reports
  • Feature requests
  • Documentation improvements
  • Design and UX polish
  • Code contributions

If ImgVault helps you, consider starring the repo and sharing it with others.

Contributors

Contributors

About

Save images, videos, and links with rich metadata, duplicate detection, and smart gallery management via Chrome extension + web app.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors