How synakr/le-git works
Le-Git is a local Electron lecture tracker: students create playlist or custom-video nodes, track viewing progress, and resume learning. The renderer communicates with Electron’s main process, which handles node actions, playlist retrieval, playback, and persistence in SQLite. The README also describes notes, goals, reminders, graphs, and hotkeys; their implementation is not present in the sampled source, so those capabilities are represented without speculative internal wiring. Upcoming browser capture and backup features are excluded.
Main entry points: main.js IPC handlers · db.js SQLite database · index.html Desktop interface
Components 14
Student experience
- Desktop interface
index.html
Electron runtime
- IPC handlers
main.js
Learning features
- Node management
main.js - Playlist import
main.js - Custom videos
main.js - Progress tracking
main.js - Notes and goals
index.html - Stats and reminders
index.html - Resume shortcuts
index.html - Video playback
main.js
Local data
- SQLite database
src/db.js
Other components
- Student
- YouTube API
- External browser
Connections 17
- Student → Desktop interface: uses
- Desktop interface → IPC handlers: sends IPC
- IPC handlers → Node management: dispatches
- IPC handlers → Playlist import: dispatches
- IPC handlers → Custom videos: dispatches
- Node management → SQLite database: reads/writes
- Playlist import → YouTube API: fetches playlist
- Playlist import → SQLite database: stores videos
- Custom videos → SQLite database: reads/writes
- Progress tracking → SQLite database: reads/writes
- IPC handlers → Progress tracking: recalculates
- IPC handlers → Video playback: dispatches
- Video playback → SQLite database: reads resume data
- Video playback → External browser: opens video
- Student → Notes and goals: uses
- Student → Stats and reminders: views
- Student → Resume shortcuts: uses