▓▓▒▒ FLOAT.BBS ▒▒▓▓
Document: imprints/sysops-daydream/2025-10-26-tui-foundations-working/2025-10-26-float-bbs-viewer-architecture
      
← Back to SYSOPS.DAYDREAM

Float.BBS Viewer Architecture Decision

ctx:: 2025-10-26 @ 03:30 PM - [project::float-bbs-viewer]

Context

Building local markdown file viewer for float-hub/float.dispatch with BBS aesthetic. Point at filesystem directory, render markdown, resolve wikilinks, navigate the zine.

Decision: Website First, TUI Later

Website (Phase 1 - NOW)

TUI (Phase 2 - LATER)

Astro + Solid.js

Why Astro

Why Solid.js (vs React)

Alternative Stack

Next.js App Router - If Astro feels wrong during spike

Core Features

Must Have (v1)

  1. Multi-directory reading - Point at:
    • ~/float-hub/float.dispatch (zine/imprints)
    • ~/float-hub (root - includes inbox, operations)
    • ~/.evans-notes/daily (daily notes, bones, tldr, sprint files)
  2. Markdown rendering - Frontmatter aware
  3. Wikilink resolution - [[filename]] → navigate to file (across all directories)
  4. File-based routing - /path/to/file renders that markdown
  5. BBS aesthetic - Brutalist design, ASCII art preserved

Nice to Have (v2)

  1. Search - Filter by frontmatter (type:, context:, status:)
  2. Backlinks - “What links here?” graph
  3. Daily notes - Detect YYYY-MM-DD pattern
  4. file_id.diz.md - Special BBS info block rendering
  5. Live reload - Watch filesystem for changes

Skip (YAGNI)

Patterns to Support

[[filename]]                 → Search across all configured directories
[[path/to/file]]            → Relative path resolution
[[YYYY-MM-DD]]              → Daily notes in ~/.evans-notes/daily/
[[2025-W##-rangle-vibe]]    → Weekly retrospectives in float.dispatch

Multi-Directory Strategy

Configured Roots:

Unified Navigation:

Resolution Algorithm

  1. Check same directory
  2. Check parent directory (breadcrumb up)
  3. Search across all configured roots (float-hub + evans-notes)
  4. Fall back to search results page (list all matches)

Implementation

BBS Aesthetic Integration

Visual Design

/                         → BBS main menu (unified index)
/float-dispatch/imprints  → Publishing house (themed collections)
/rangle-weekly            → Work journal area
/ritual-forest            → Consciousness tech library
/sysops-daydream          → TUI experiments + float.bbs concepts
/evans-notes/daily        → Daily notes archive
/evans-notes/bones        → Knowledge wrap files
/float-hub/inbox          → Incoming deliveries

Multi-Root Navigation:

Implementation Phases

Phase 0: Spike/Prototype (2-3 hours)

Phase 1: Core Viewer (1 day)

Phase 2: Navigation (1 day)

Phase 3: Polish (½ day)

Phase 4: Package (optional)

TUI Roadmap (Future)

When to Build TUI

TUI Features

Tech Stack

Next Steps

  1. Create repo: float-bbs-viewer (or float.bbs-local)
  2. Spike Astro: Prove wikilink resolution + routing
  3. Decision: Continue OR pivot to Next.js
  4. Phase 1: Core viewer implementation
  5. Integrate: Existing v0 brutalist design system

Configuration Example

Astro multi-root setup:

// astro.config.mjs
export default {
  content: {
    collections: {
      floatDispatch: {
        type: 'content',
        directory: '/Users/evan/float-hub/float.dispatch'
      },
      floatHub: {
        type: 'content',
        directory: '/Users/evan/float-hub'
      },
      evansNotes: {
        type: 'content',
        directory: '/Users/evan/.evans-notes/daily'
      }
    }
  }
}

Unified Index Strategy:


Decision Date: 2025-10-26 Decided By: Exploratory conversation with kitty claude Status: Planning → Ready for spike Next Action: Create Astro spike project

═══════════════════════════════════════════════════════════════
 sysop::boring.core - float.bbs viewer v0.1
═══════════════════════════════════════════════════════════════
    
▓▓▒▒ TODAY: 2025-10-27 ▒▒▓▓

<< 2025-10-26 | 2025-10-28 >>

🎯 What Evan Needs This Morning

Pending PRs (Awaiting Review/Merge)

  • PR #604: GP node assessment + basket automation

    • Status: In approval backlog, merge conflicts being resolved
    • Demos: Successfully demo’d on 2025-10-24 sprint demo (Daniel happy with feedback)
    • Next: Check if conflicts resolved, ready for merge to staging
  • PR #606: [Description needed - check GitHub]

    • Status: Demo’d successfully, awaiting review
    • Next: Check GitHub status
  • PR #607: [Description needed - check GitHub]

    • Status: Demo’d successfully, awaiting review
    • Next: Check GitHub status

Active Issues Ready for Dev

  • Issue #122: Assessment workflow

    • Location: /Users/evan/float-hub/rangle/issues/active/122-assessment-workflow.md
    • Status: Fully documented with acceptance criteria
    • Priority: Assessment UX experience (per Scott sync 2025-10-24)
    • Key consideration: Guest→account response transfer (piggybacking basket logic)
  • Issue #442: HEIC upload support

    • Location: /Users/evan/float-hub/rangle/issues/active/442-heic-upload-support.md
    • Status: Fully documented with acceptance criteria
    • Priority: Lower than #122 (per Scott sync realignment)

Follow-ups from Weekend

  • Check GitHub PR statuses (#604, #606, #607) - are they merged? ready for staging?
  • Scott mentioned creating UI/UX ticket (priority 3) and multi-product assessment response logging ticket
  • Wins tracking system now operational - remember to capture wins as they happen

First Tasks

  • Check pharmacy-online PR status (merged? staging? conflicts?)
  • Review Issue #122 (assessment workflow) - priority work
  • Check if Scott’s new tickets created (UI/UX, multi-product logging)
  • Capture wins as work happens (two-home system: quick log + weekly review)

Context from Yesterday

Weekend mode: Shack building + infrastructure work

  • float.bbs viewer operational
  • TodayDrawer component shipped
  • Documentation preserved
  • Monday prep notes ready

Repo: https://github.com/pharmonline/pharmacy-online Local: ~/projects/pharmacy-online


timelog

  • 11:45pm - 12:03am - [project::float-bbs-viewer] hermit crab blueprints → forge patterns extracted (102KB doc)
  • 11:40pm - 11:45pm - [project::float-infrastructure] domain migration → sysop-beta.floatbbs.net live
  • 12:03am - 12:05am - [project::float-hub] CLAUDE.md evna integration → explicit tool names + capture triggers

Late Night: Infrastructure & Blueprinting

float-bbs-viewer Architecture Extraction (11:45pm - 12:03am)

  • Extracted patterns from float-dispatch-manifesto-forge (React/Vite/ShadCN)
  • Created hermit crab reference: 2025-10-26-dispatch-blueprints-for-bbs-viewer-hermit-crab-patterns.md
  • Key patterns: color-coded imprint system, grid layouts, Tailwind HSL tokens, editorial philosophy sections
  • Translation map: React hooks → Astro content collections, SPA routing → SSG file-based
  • Breadcrumb: /Users/evan/projects/float-bbs-viewer/2025-10-26-dispatch-blueprints-for-bbs-viewer-hermit-crab-patterns.md

CLAUDE.md evna Integration (12:03am - 12:05am)

  • Replaced vague “evna-context-concierge” references with explicit tool names
  • Added mandatory capture triggers (7-item checklist: after features, docs, infrastructure, archaeology, context switches, obstacles, chunks)
  • Context capture pattern template (ctx::, project::, format)
  • Breadcrumb: /Users/evan/float-hub/CLAUDE.md:308-315, 374-403, 422

Morning: Brain Booting

(Space for morning thoughts)

Press ESC or Ctrl+D to close