Skip to main content

📚 Lecture Manager

Unified media manager for YouTube lectures, Facebook content, offline article reading, question banking, and productivity tracking.

Python License: MIT


🌟 Features

📺 YouTube Lectures

  • Add lectures via YouTube URL or video ID
  • Auto‑detect title, lecturer, date, and time from the title
  • Organise files into a structured folder tree (by paper, subject, chapter)
  • Download videos in 720p (or lower) with metadata and thumbnails
  • Local playback via embedded player (web UI) or external player (CLI)
  • YouTube upload (unlisted) with automatic mirror ID linking
  • Mirror management – link original videos to uploaded copies

📘 Facebook Content

  • Download videos, reels, and photos from Facebook
  • Auto‑detect uploader and title
  • Organise files by type (video/photo) with MD5‑based filenames
  • Full database tracking with export/import

❓ Question Bank (New!)

  • Import/export questions in multiple formats: TXT, CSV, JSON, XML (Moodle), HTML
  • Support for four question types: essay, multichoice, truefalse, matching
  • Context‑aware import – set global defaults (date, institution, level, paper, group, subject) and reuse them across questions
  • Reading passage feature – define once, reuse in many questions
  • Group questions into exam sections
  • Web UI for browsing, searching, and viewing whole papers
  • Advanced search and filtering

⏱️ Pomodoro Timer (New!)

  • Built‑in Tkinter GUI timer with study sessions, short/long breaks
  • Task management with priority, completion, and bulk add
  • Study logging with subjects, session types (study/revision/pretest/exam)
  • Daily, weekly, and monthly progress tracking
  • Badges and streak tracking to keep you motivated
  • Detailed analytics with charts (matplotlib)

📰 Offline Article Reader (Instapaper Integration)

  • Save articles, YouTube lectures, or questions to Instapaper
  • Offline storage of full article content with local search
  • OAuth authentication and full API sync

🌐 Web Interface (Flask)

  • Dashboard with library statistics and paper breakdown
  • Browse and manage YouTube and Facebook entries
  • View questions, whole papers, and browse by chapter
  • Import/export questions via the web UI
  • Stream local video files directly in the browser

🛠️ CLI Tools

  • Full terminal interface with colour‑coded menus
  • Tally and sync database with actual files
  • Duplicate detection and resolution
  • Backup, restore, and trash management
  • File compression (re‑encode to 480p H.264) to save space
  • Share/restore files via a shared directory

🗄️ Database Backend

  • MariaDB/MySQL with automatic schema creation and migration
  • Unique constraints prevent duplicate questions and lecture records
  • Transaction‑safe import/export operations

🔊 Sound / Beep

The Pomodoro timer uses a beep to signal session end. If you don't hear a sound:

  • In Konsole, enable the audible bell in Settings → Notifications.
  • Or install beep: sudo apt install beep
  • On some systems, the paplay or speaker-test fallbacks will work without extra setup.

🚀 Quick Start

Prerequisites

  • Python 3.8 or higher
  • MariaDB/MySQL server
  • ffmpeg (for video processing)
  • deno (optional, used by some internal tools)

Installation

# Clone the repository
git clone https://github.com/blee-design/lecture-manager.git
cd lecture-manager

# Create a virtual environment and install the package
make setup

Release files for lecture-manager 3.0.2.post0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lecture-manager 3.0.2.post0
File Size Uploaded
lecture_manager-3.0.2.post0.tar.gz 228.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lecture-manager 3.0.2.post0
File Interpreter ABI Platform
lecture_manager-3.0.2.post0-py3-none-any.whl Python 3 none any Details

Total release size: 448.3 kB

Release files / lecture_manager-3.0.2.post0.tar.gz

Download URL lecture_manager-3.0.2.post0.tar.gz
Size 228.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a986401412a52df086f5599b972e0f2aa05f58b036901fb66d14a85a378924c6
BLAKE2b-256 checksum
How to use checksums
d70a98abd97166393dd3c735507c396c76564df48bf2188394d8a2b9d9303f4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / lecture_manager-3.0.2.post0-py3-none-any.whl

Download URL lecture_manager-3.0.2.post0-py3-none-any.whl
Size 219.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
73d72e82e3ea1455a3a91484155adda74e7f42f36fa75f9053c8774dd74db120
BLAKE2b-256 checksum
How to use checksums
20c7a0435b43e64ea0eaafe88fe5e37c1daded550f3ab65b75698065dc7a2887
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page