- Multi-track timeline — arrange video, audio, and image clips across unlimited tracks
- Real-time preview — frame-accurate playback with layer compositing
- Drag & drop import — drop files straight onto the canvas or the timeline
- Clip trimming — resize clips from either edge with frame-accurate handles
- Audio fades — per-clip fade-in / fade-out curves
- Track management — add, rename, and delete tracks on the fly
- Zoom — scroll to zoom the timeline ruler in/out
git clone https://github.com/your-org/apollo.git
cd apollo
npm install
npm run start # Electron + Vite dev serverRequires Node.js 18+
npm run dev # browser only (no Electron)
npm run build # production bundle| UI | React 19 + TypeScript |
| Bundler | Vite 8 |
| Desktop | Electron 41 |
| Styling | SCSS |
| File drop | react-dropzone |
src/
├── components/
│ ├── TimeLine/ # timeline, tracks, clips, playhead
│ └── Preview/ # preview canvas + layer compositor
├── context/
│ ├── ClipContext/ # assets, tracks, clip state
│ ├── CurrentTimeContext/
│ └── PreviewContext/
└── utils/ # hooks: drag, resize, zoom, sync
electron/
└── main.ts # BrowserWindow bootstrap
Pull requests are welcome. For major changes please open an issue first.
Made by Starodybvzev
