Text
CLAUDE
LHAP 302A-61-40680 (FA25) - Water and Light/CLAUDE.md
Download File
This resource is available as an original file download.
Extracted Text
Extracted from the original source file.
# CLAUDE.md — LHAP 302A Water and Light
## Project Overview
Study-notes workspace for **LHAP 302A-61-40680 (FA25) — Landscape Construction II: Water and Light** at Olds College (Instructor: T. Warke). The goal is to produce comprehensive, exam-ready notes for each lecture, validated against source PDFs, review questions, and the final exam.
## Course Structure
| Module | Topic | Lectures |
|--------|-------|----------|
| **A — Water** | Water Features | A1 Water in the Landscape, A2 Water Feature Materials, A3 Water Feature Construction, A4 Water Feature Maintenance |
| **B — Lighting** | Low Voltage Lighting | B1 Using Low Voltage Lighting, B2 Materials for LV Lighting, B3 Installing LV Lighting, B4 LV System Maintenance |
## Workspace Layout
```
Module A - Water/ # Source lecture TXTs + lecture PDFs (in Lectures/)
Module B - Lighting/ # Source lecture TXTs + review question MDs
Notes/Module A/ # OUTPUT: finished notes (.md, .pdf, .docx)
Notes/Module B/ # (future) finished notes
Introductory Information/ # Course intro, schedule, policies
Video Links/ # Supplementary video URLs
Homework, Quizzes, and Exams/ # Review questions, assignments
docs/plans/ # Implementation plans
```
## Note-Creation Process (The Plan)
For each lecture, follow these 6 steps in order:
1. **Read Context** — Read `Intro.txt`, the lecture `.txt`, any extra reading, assignment files, review questions, and `Final Exam.md` to understand scope and what will be tested.
2. **Read Lecture PDF** — Use `pdfplumber` to extract text from the lecture PDF in `Module X/Lectures/`. This is the authoritative source.
3. **Create Notes** — Write comprehensive Markdown notes with **full paragraph depth** (not bullet summaries). Include tables, callout boxes, Q&A sections, and quiz prep. Target: every concept from the PDF is represented.
4. **Validate Against Assessments** — Cross-check notes against review questions and `Final Exam.md`. Every testable concept must be covered. Add Quiz Prep TRUE/FALSE section.
5. **Validate Against Objectives** — Confirm all learning outcomes from the lecture are addressed.
6. **Generate PDF + DOCX** — Run the generation script to produce styled `.pdf` and `.docx` alongside the `.md`.
## Completion Status
| Lecture | Markdown | PDF | DOCX | Validated |
|---------|----------|-----|------|-----------|
| A1 Water in the Landscape | Done (468 lines) | Done | Done | Yes — all 8 review Qs + final exam |
| A2 Water Feature Materials | Done (513 lines) | Done | Done | Yes — all 11 review Qs + final exam Q3/Q4/Q5/Q8 + Assignment A answer key. Corrected: Table 1 matched to PDF, polyethylene = most susceptible (not PVC), added Koi/lime/stream wording fixes |
| A3 Water Feature Construction | — | — | — | — |
| A4 Water Feature Maintenance | — | — | — | — |
| B1 Using Low Voltage Lighting | — | — | — | — |
| B2 Materials for LV Lighting | — | — | — | — |
| B3 Installing LV Lighting | — | — | — | — |
| B4 LV System Maintenance | — | — | — | — |
## Key Files
- `generate_a1_notes.py` — Generates A1 PDF + DOCX from hardcoded content (uses `fpdf2` + `python-docx`)
- `generate_styled_pdf.py` — Older/outdated A1 PDF generator (superseded by `generate_a1_notes.py`)
- `Notes/Module A/Lecture A1 - Water in the Landscape Notes.md` — Completed A1 notes (source of truth)
- `Final Exam.md` — Multiple-choice final exam covering all modules (use for validation)
## Tech Stack
- **Python 3** with venv at `.venv/`
- **fpdf2** — PDF generation (styled layout with color palette, tables, callout boxes)
- **python-docx** — DOCX generation
- **pdfplumber** — Extract text from lecture PDFs
## Notes Style Guide
- **Depth over brevity** — Full paragraph explanations, not one-line bullets. If the lecture says it, the notes explain it.
- **Tables** for comparisons (formal vs informal, sun vs shade, etc.)
- **Callout boxes** — KEY POINT, WARNING, TEST TIP, QUIZ ALERT
- **Quick Recall Q&A** — Cover-the-answer self-test pairs (15-20 per lecture)
- **Quiz Prep TRUE/FALSE** — Common misconceptions mapped to review questions
- **Critical Numbers** — Summary table of testable values (depths, times, quantities)
- **Sections**: Learning Outcomes → Main Content → Q&A → Quiz Prep → Summary
## Important Conventions
- Output files go in `Notes/Module X/` named `Lecture X# - <Title> Notes.{md,pdf,docx}`
- Each lecture gets its own generation script: `generate_a#_notes.py`
- Always validate against review questions AND final exam before marking complete
- Use immutable patterns in Python scripts (frozen dataclasses where applicable)
- Follow PEP 8, type annotations on all function signatures