A modern desktop application for managing your local video collection, built with Electron and React.
-
📁 Local Video Management
- Scan and manage your local video collection
- Parse NFO files for video metadata
- Automatic metadata enrichment from TMDB
- Support for movie posters and fanart
-
🎬 Video Organization
- Grid-based video browser
- Filter by favorites and watch later
- Genre-based organization
- Clean, modern interface
-
🎨 User Experience
- Dark/Light theme support
- Responsive design
- Quick video search
- Sidebar navigation
- Frontend: React + Vite
- Desktop: Electron
- Styling: Tailwind CSS
- State Management: React Context
- API Integration: TMDB API v3
- Build Tool: electron-builder
- Node.js 16+
- npm or yarn
- TMDB API key
- Clone the repository:
git clone [repository-url]
cd vidman
- Install dependencies:
npm install
- Create a
.env
file in the root directory:
VITE_TMDB_API_KEY=your_tmdb_api_key
- Start the development server:
npm run electron:dev
To create a production build:
npm run electron:build
/src
- React application source/components
- React components/contexts
- React context providers/lib
- Utility functions and API clients
/electron
- Electron main process filesmain.js
- Main process entrypreload.js
- Preload scripts
The application expects your video collection to follow this structure:
Video Folder/
├── Movie Name (Year)/
│ ├── movie.nfo
│ ├── poster.jpg
│ ├── fanart.jpg
│ └── video file
Supports the following metadata from NFO files:
- Movie title and year
- Plot and tagline
- Rating and runtime
- Genres and certification
- Cast information
- Video/audio stream details
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.