Phase 6 Plan: Course Architecture
Phase 6: Course Architecture Plan
Status: Design document — pending approval before implementation.
Overview
Phase 6 adds a full course layer to seekersabodepl.com, transforming the “Coming soon” cards into live course detail pages with module-by-module structure, curated readings from the library, thinker cross-references, and an LMS integration strategy.
What exists now
- 5 course “Coming soon” cards on the
/courses/page (fromdata/courses.yaml) - Static site with Hugo, Pagefind search, 75 library entries, 35 thinker profiles
- No user accounts, no enrolment, no progress tracking
What Phase 6 delivers
- Individual course detail pages with module breakdowns
- Each module linked to relevant library entries and thinker profiles
- Course-level reading lists auto-curated from the library
- A clear migration path to a full LMS (holisticconsciousness.in) without building one from scratch
1. Course Information Architecture
1.1 Content types
| Type | Description | Fields |
|---|---|---|
| Course | A full-length learning path with N modules | title, slug, tagline, description, domains[], level, icon, status (draft/published), estimated_hours, prerequisites |
| Module | A unit within a course — 1–3 learning hours | title, description, order, readings[], thinkers[], reflection_prompts[] |
| Reading | A link to a library entry assigned to a module | library_slug, order, required/optional, notes |
| Assessment | A check for understanding at module end | type (quiz/reflection/project), prompt, answer_key (private) |
1.2 Data model for data/courses.yaml
courses:
- title: "Foundations of Consciousness Studies"
slug: foundations
icon: "📚"
level: beginner
estimated_hours: 16
prerequisites: []
status: draft
modules:
- title: "What Is Consciousness?"
order: 1
description: "Defining the term, mapping the problem space"
readings:
- library_slug: "what-is-it-like-to-be-a-bat"
required: true
notes: "The classic starting point — Nagel's bat paper"
- library_slug: "facing-up-to-the-problem-of-consciousness"
required: true
notes: "Chalmers' framing of the hard vs. easy problems"
thinkers:
- "Thomas Nagel"
- "David Chalmers"
reflection: "What aspect of consciousness do you find most puzzling? Why?"
1.3 File structure for course pages
content/
courses/
_index.md ← the listing page (already exists)
foundations/
_index.md ← course detail page (frontmatter + description)
science-spirituality/
_index.md
meditation-brain/
_index.md
hard-problem/
_index.md
consciousness-ai/
_index.md
data/
courses.yaml ← course + module definitions (already exists)
readings.yaml ← optional: reading→course mappings
2. Page Structure
2.1 Course listing page (/courses/)
Already redesigned. Shows 5 “Coming soon” cards with icon, description, module count, level, domains, topics. The Phase 6 upgrade swaps the “Coming soon” badge for an active “View course →” button.
2.2 Course detail page (/courses/{slug}/)
┌─────────────────────────────────────────┐
│ Breadcrumb: Home / Courses / Title │
│ │
│ ┌──────────────┐ │
│ │ 📚 │ FOUNDATIONS OF... │
│ │ │ Tagline │
│ └──────────────┘ │
│ │
│ ● 8 modules ● Beginner ● 16 hrs │
│ │
│ ─── Description ─── │
│ Long-form description of the course. │
│ │
│ ─── What You'll Learn ─── │
│ • Define consciousness across trad. │
│ • Distinguish hard vs. easy problems │
│ • Compare GWT, IIT, Predictive Proc. │
│ │
│ ─── Module 1: What Is Consciousness? ──│
│ ┌────────────────────────────────┐ │
│ │ Required readings: │ │
│ │ 📖 What Is It Like to Be a Bat │ │
│ │ 📖 Facing Up to the Problem… │ │
│ │ │ │
│ │ Thinkers: Nagel, Chalmers │ │
│ └────────────────────────────────┘ │
│ │
│ ─── Module 2: The Hard Problem ─── │
│ ... │
│ │
│ ─── Prerequisites ─── │
│ None — suitable for beginners. │
│ │
│ [View on holisticconsciousness.in] │
│ [Download course outline (PDF)] │
└─────────────────────────────────────────┘
2.3 Module reading card design
Each module shows:
- Module number (circular badge)
- Title
- Description (2–3 sentences)
- Required readings — linked library entries with
🌱seed indicator if applicable - Optional readings — smaller style
- Related thinkers — profile links
- Reflection prompt — italicised quote style
2.4 Template structure
layouts/
courses/
list.html ← /courses/ listing (already done — single.html)
single.html ← /courses/{slug}/ course detail (Phase 6 new)
partials/
course/
hero.html ← course header with icon, level, modules
module-card.html ← individual module with readings
reading-item.html ← single reading with link + seed status
course-sidebar.html ← prerequisites, action buttons
3. Library Reading Integration
3.1 How it works
Each module’s readings[] references a library_slug — the same slug used in content/library/{domain}/{slug}.md. The template looks up the page by slug and renders its title, author, summary, and status (seed/reviewed).
3.2 Lookup mechanism
Hugo has no built-in “lookup page by slug” function, so we have two options:
Option A — Shortcode (recommended for Phase 6):
Create a reading shortcode that takes a library slug:
{{< reading "what-is-it-like-to-be-a-bat" required=true >}}
The shortcode:
- Iterates
.Site.RegularPagesfiltered byType "library" - Finds the page where
.Page.Params.slugmatches - Renders title, author, summary, seed status badge, link
Option B — Partial with page loop:
Create a partial course/reading-item.html that receives library_slug and required and runs the same loop.
Recommendation: Shortcode for inline use in course markdown; partial for the YAML-driven approach (data-driven modules render via partial).
3.3 Seed awareness
When a reading entry is status: "seed", the course page shows:
📖 What Is It Like to Be a Bat 🌱
— Thomas Nagel (1974) | Seed entry — not yet reviewed
This lets students know which readings are still awaiting editorial review. It also creates implicit pressure to review seed entries that block course reading lists.
3.4 Cross-links back from library to courses
Each library entry could optionally list which courses contain it as a reading:
# In library entry frontmatter:
courses:
- "foundations"
- "hard-problem"
This enables a “Found in these courses” section on library entry detail pages.
4. Thinker Profile Links
4.1 Course→Thinker linking
Each module’s thinkers[] field lists thinker names. The course page renders them as links to /thinkers/{slug}/. For courses with 10+ modules, a “Key thinkers” sidebar aggregates all unique thinkers across all modules.
4.2 Thinker→Course backlinks
Thinker profile frontmatter gains:
courses:
- "foundations"
- "science-spirituality"
Then the thinker profile page shows “Taught in these courses” with links.
4.3 Domain cross-reference
A course’s domains[] field connects it to the domain landing pages. Each domain page can then show:
Courses in this domain:
📚 Foundations of Consciousness Studies
❓ The Hard Problem: Consciousness Explained?
5. LMS Integration Strategy
5.1 Principle: Don’t rebuild an LMS
seekersabodepl.com is a knowledge directory — a reference library with curated pathways. It should NOT become a full LMS. Instead:
- Static course pages on seekersabodepl.com provide the syllabus, readings, and thinker context
- holisticconsciousness.in handles enrolment, progress tracking, assessments, certificates, and community (if it has those features)
- The two platforms link to each other — no SSO, no data sharing
5.2 Integration points
| seekersabodepl.com (Phase 6) | holisticconsciousness.in (future) |
|---|---|
| Course detail page with syllabus | Full course with video, quizzes |
| Reading links to library | Full supplementary materials |
| Thinker context pages | Discussion forums |
| “View full course on LMS →” button | Links back to seekersabodepl for reference |
5.3 Button design
On each course detail page, a prominent button:
┌──────────────────────────────────┐
│ ▶ Enrol on holisticconsciousness.in │
│ Full course with video, quizzes, cert │
└──────────────────────────────────┘
And a secondary link:
📖 Prefer to study independently? Browse the readings here.
5.4 When to enable the LMS link
The button stays “Coming soon” until the corresponding course is actually published on holisticconsciousness.in. Data flow:
- Prashant creates a course on holisticconsciousness.in
- Prashant flips
status: "published"indata/courses.yaml - The site rebuilds and the course page activates its “Enrol” button
- The library entries linked in the course get a “Used in course: XYZ” badge
5.5 Future: Open enrollment via API
If holisticconsciousness.in has an API:
- Course detail page could show current enrollment count
- “X learners enrolled” social proof badge
- Could surface course reviews or testimonials
6. Phased Implementation
Phase 6.1 — Course detail pages (estimated: 2–3 hours)
- Create
content/courses/{slug}/_index.mdfor each of the 5 courses - Each
_index.mdhas full frontmatter: title, description, domains, level, modules - Create
layouts/courses/single.htmlfor course detail rendering - Create
layouts/partials/course/module-card.htmlpartial - Build and verify all 5 course detail pages render correctly
- Run QA: all internal links work, no broken URLs
Phase 6.2 — Library reading integration (estimated: 3–4 hours)
- Build the
readingshortcode or partial that looks up library entries by slug - Wire module readings to library entries
- Add seed-awareness: show 🌱 badge on seed-status readings
- Add
courses: []frontmatter to affected library entries - Add “Found in these courses” section to library entry
single.html - Add “Found in these courses” section to thinker profile
single.html
Phase 6.3 — Cross-referencing & navigation (estimated: 2 hours)
- Add “Courses in this domain” section to domain landing pages
- Add course counts to domain stats
- Ensure breadcrumbs work for courses section
- Add courses link in navigation (already exists)
- Test all cross-navigation paths
Phase 6.4 — LMS button wiring (estimated: 1 hour, done per course)
- When a course is published on holisticconsciousness.in, update
data/courses.yaml:lms_url: "https://holisticconsciousness.in/courses/foundations" lms_status: "published" # or "coming-soon" - The course detail page shows/hides the “Enrol” button based on
lms_status - Library entries linked from published courses get a live badge
Phase 6.5 — Polish & QA (estimated: 1–2 hours)
- Responsive testing on mobile
- Verify all 5 course pages, all modules, all reading links work
- Verify accessibility (headings, alt text, focus order)
- Run
scripts/qa_checks.py(course pages add 5 more, total 135) - Prashant reviews content accuracy
Total estimate: 9–12 hours.
7. Future Considerations (Post-Phase 6)
| Feature | When | Effort |
|---|---|---|
| PDF course outline download | Phase 6.5 | Low — Hugo generates from module data |
| Print-friendly course pages | Phase 6.5 | Low — @media print CSS exists |
| Course progress tracking (localStorage) | Post-6 | Medium — JS only, no backend |
| Course search in Pagefind | Phase 6.1 | Free — Pagefind auto-indexes new pages |
| “My learning path” — user-curated set of courses | Post-6 | Medium — needs localStorage or account |
| LMS API integration for enrollment counts | Post-6 | Depends on holisticconsciousness.in API |
| Course reviews / testimonials | Post-6 | Needs CMS or data file updates |
| Video embeds (YouTube lectures per module) | Post-6 | Low — embed in markdown |
8. Open Questions for Prashant
Course detail page priority — Which course should get a detail page first? Foundations (most broad) or Hard Problem (most focused)?
Reading shortcode vs. YAML-driven — The shortcode approach is simpler for Phase 6.1 and lets you write course content in markdown. The YAML-driven approach (from
data/courses.yaml) is more structured but harder to edit. Preference?LMS platform capabilities — Does holisticconsciousness.in have an API? Can it accept enrollment links from external sites? This affects Phase 6.4–6.5.
Who writes course descriptions — Should the AI draft all 5 course module outlines, or does Prashant want to write them directly?
Should courses have their own pathway? — Example: “Take Foundations → Hard Problem → Consciousness & AI” as a recommended sequence.