A lightweight cross-platform application for VJs to manage events, logos, and timers with Resolume integration.
- Event Synchronization: Sync events from vj.tools with offline support
- Logo Management: Organize and display logos for events
- Timer Control: Set timers for sets with visual countdown
- Messaging System: Communicate with other VJs and event organizers
- OSC Integration: Control Resolume via OSC
- NDI Support: Stream logos directly to Resolume via NDI
- Resolume Wire Plugin: Seamless integration with Resolume
-
Clone the repository:
git clone https://github.com/yourusername/vj-event-sync.git cd vj-event-sync
-
Install dependencies:
npm install
-
Start the development server:
npm run tauri dev
To build the application for your platform:
npm run tauri build
This will create a standalone executable in the src-tauri/target/release
directory.
The application is built with:
- Frontend: Vue.js 3 with Vite
- Backend: Node.js with Express
- Desktop Framework: Tauri (Rust)
- Database: SQLite
- Communication: Socket.io for real-time updates
vj-event-sync/
├── src/
│ ├── client/ # Vue.js frontend
│ │ ├── components/ # Vue components
│ │ ├── services/ # API services
│ │ └── ...
│ ├── server/ # Node.js backend
│ │ ├── controllers/ # API controllers
│ │ ├── models/ # Data models
│ │ └── ...
│ └── wire/ # Resolume Wire plugin
├── src-tauri/ # Tauri (Rust) code
│ ├── src/ # Rust source code
│ └── ...
├── public/ # Static assets
└── ...
- Create new Vue components in
src/client/components/
- Add API endpoints in
src/server/controllers/
- Update the Tauri commands in
src-tauri/src/main.rs
if needed
This project is licensed under the MIT License - see the LICENSE file for details.