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.1.post3

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.1.post3
File Size Uploaded
lecture_manager-3.0.1.post3.tar.gz 223.3 kB Details

Built distribution (wheel)

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

Total release size: 437.0 kB

Release files / lecture_manager-3.0.1.post3.tar.gz

Download URL lecture_manager-3.0.1.post3.tar.gz
Size 223.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d8acaba5aa1fc1abf48c3fdc55dd3acad1958a9a48be6da7cdb995b60007af03
BLAKE2b-256 checksum
How to use checksums
4b68db6d570146df53c6d3f641ba62ebf7126ec050617a9894def74ba2ea7c43
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.1.post3-py3-none-any.whl

Download URL lecture_manager-3.0.1.post3-py3-none-any.whl
Size 213.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5aa31dd9816318da0c3bd0d5313c50086a03cd8e81b4808a36418258fe836e1d
BLAKE2b-256 checksum
How to use checksums
850ddb3fd01aa37bba2208f3aeacfcfad83c42b3ae1cffe135339387a6fd2406
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