📚 Sync updated wiki pages from docs/wiki

2025-08-04 19:57:57 -07:00
parent 02d5c8c65f
commit e9bf93a562

@ -1,138 +1,15 @@
# Architecture Overview
This page provides an overview of the internal structure of the LCS Pipeline.
\# 🧱 Architecture Overview ## Modules
- `main.py`: Central orchestration logic
- `modules/`: Reusable utilities for title cards, thumbnails, uploads
- `assets/`: Contains branding videos and fonts
This page explains the modular architecture of the \*\*LCS Video Pipeline\*\*, covering key components, data flow, and extensibility.
---
\## 🧩 Core Modules
Each component is designed to be loosely coupled and highly testable:
\### 1. `main.py`
\* Entry point
\* Discovers session folders and orchestrates processing
\### 2. `modules/`
Contains reusable components:
\* `render\_engine.py`: Applies intros/outros and overlays
\* `title\_utils.py`: Generates dynamic title cards
\* `thumbnail\_utils.py`: Creates brand-compliant thumbnails
\* `yt\_poster.py`: Uploads to YouTube
\* `pt\_poster.py`: Uploads to PeerTube (WIP)
\* `description\_gen.py`: Creates OpenAI-based video descriptions
\* `date\_utils.py`, `config.py`: Environment and date helpers
---
\## 🔄 Data Flow
```plaintext
\[raw clips] → \[montages/, hits/, etc.] → main.py → render\_engine → final.mp4 → yt\_poster
```
All clip metadata (e.g., `notes.json`) is parsed and tracked alongside rendered files.
---
\## 🧰 Tooling \& Configuration
\* \*\*`.env`\*\*: Stores API keys and client secrets (excluded from Git)
\* \*\*`config.py`\*\*: Centralized paths, flags, and constants
\* \*\*`logs/`\*\*: Execution logs, status, and failures
\* \*\*`tests/`\*\*: Pytest-based functional coverage
\* \*\*`video-pipeline.wiki/`\*\*: Markdown wiki repo (submodule)
---
\## 🚧 Extensibility
\* Add new platforms (e.g., TikTok) via new `poster\_\*.py`
\* Add formats (e.g., square, cinematic) by enhancing `render\_engine.py`
\* Add more metadata (e.g., voice notes) by expanding `notes.json` parser
---
\## 🧠 Design Philosophy
\* \*\*Single responsibility per module\*\*
\* \*\*Declarative configuration\*\*
\* \*\*E2E traceability via metadata\*\*
\* \*\*Fun, brand-forward visual output\*\*
---
\*Last updated: 2025-08-04\*
## Flow
1. Detect new video sessions
2. Generate metadata, titles, overlays
3. Render videos with intro/title/outro
4. Upload to YouTube and optionally PeerTube
5. Auto-publish wiki and social metadata