Portfolio diagram
Atlas
A living topology of the lab: tools, scenes, learning environments, and the systems that distribute them. studio-notes sits across the map as the distilled layer for cross-project patterns, decisions, reference, and teaching cards. Hover to spotlight the map; click only the repo-backed nodes to open their pages.
Portfolio diagram
The diagram mirrors the current repository map. Concrete repos open to node pages; grouping labels stay in the diagram as structure, not destinations.
consent-forward scenes,
and learning environments — all documented loudly."] thesis --> toolsPillar["Tools"] thesis --> scenesPillar["Scenes"] thesis --> learningPillar["Learning Environments"] thesis --> infraPillar["Systems & Distribution"] thesis --> studioNotes["studio-notes
Cross-project layer"] %% TOOLS (one tall chain) toolsPillar --> toolsAudio["Tools: sound + patch worlds"] toolsAudio --> tmsLib["tms-lib"] --> seedBox["seedBox"] --> Horizon["Horizon"] --> DustPress["DustPress"] --> lofiSampler["lofi-sampler"] --> PdRepo["Pd"] --> VCVpatch["VCV_patch"] VCVpatch --> toolsControl["Tools: control + hardware"] toolsControl --> MOARkNOBS42["MOARkNOBS-42"] --> MN42Configurator["MN42 configurator"] --> arduinoSketches["arduinoSketches"] --> microGranny2["microGranny2"] --> x0xb0x["x0xb0x"] x0xb0x --> toolsAnalysis["Tools: analysis + triggers + DSP"] toolsAnalysis --> frZone["frZone_core"] --> teensyDSP["Teensy DSP fx unit"] %% SCENES (one tall chain) scenesPillar --> scenesWorks["Scenes: works + studies"] scenesWorks --> perceptualDrift["perceptual-drift"] --> pointyClumps["pointy-clumps"] --> droneChorus["drone-chorus"] --> roomLens["roomLens"] --> StringFieldNode["StringField"] --> DiceLoopNode["DiceLoop"] --> hallwayReactor["hallway-reactor"] --> ArduinoSculpture["ArduinoSculpture_MCAD"] --> HumanBuffer["Human-Buffer"] --> memory_engine["Memory Engine"] HumanBuffer --> scenesStage["Scenes: stage interop stack"] scenesStage --> liveRig["live-rig"] --> liveRigCtrl["live-rig-control"] --> interstream["interstream"] --> maelstrom["maelstrom"] --> scVideoMixer["SC Video Mixer"] --> clipFoundry["new_wrld (clip foundry)"] --> deskCam["desk camera feed"] %% LEARNING (one tall chain) learningPillar --> learnCurricula["Learning: createMPLS curricula"] learnCurricula --> cMCurricula["cM_curricula"] --> scratch["Scratch (12w)"] --> printing["3D print/CAD (4)"] --> lego["LEGO Spike/BricQ"] --> piper["Piper/RPi"] --> dronesEd["Drones curriculum"] --> privacyMedia["Privacy media course"] privacyMedia --> learnFactory["Learning: course factory + templates"] learnFactory --> SyllabusRepo["Syllabus"] --> ART215["ART215_SP22"] ART215 --> learnDocs["Learning: docs + public site"] learnDocs --> repairStudio["repair-studio"] --> machineDocs["machine-docs"] --> learnOps["Learning: teacher workflow"] learnOps --> teacherOps["make → deploy → assess"] %% SYSTEMS (one tall chain + hubs at the bottom) infraPillar --> infraLMS["Systems: classroom doorways"] infraLMS --> djangoLMS["LMS redesign (Django)"] --> classhub["Class Hub"] --> infraStack["Infra stack (PG/Redis/MinIO/Caddy)"] infraStack --> infraFleet["Systems: deployment + device fleet"] infraFleet --> piImaging["Pi imaging kit"] --> docker["Docker/compose"] --> server["Ubuntu server"] --> openvpn["OpenVPN"] openvpn --> infraArchive["Systems: indexing + publishing"] infraArchive --> llfs["LlamaFS"] --> studio1["Studio1"] --> ghPages["GitHub Pages"] ghPages --> infraLab["Systems: studio infrastructure"] infraLab --> homeauto["homeauto"] --> turingpi2["Turing Pi 2"] --> printServer["Repetier-Server node"] printServer --> infraGov["Systems: governance + ethics"] infraGov --> governance["AGENTS + checklists + consent notes"] governance --> agencyHub["Agency / Authorship / Feedback Loops"] --> opennessHub["Open Documentation & Consent-Forward Ethos"] --> resilienceHub["Field Reliability / Safety / Care"] %% Cross-links (kept high-level so columns stay vertical) toolsControl -. "workshops" .-> learnCurricula toolsAnalysis -. "triggers" .-> scenesStage infraLMS -. "delivers" .-> learnCurricula infraArchive -. "publishes" .-> learnDocs learnCurricula -. "fieldwork feeds" .-> scenesWorks studioNotes -. "harvests patterns" .-> toolsPillar studioNotes -. "distills scene logic" .-> scenesPillar studioNotes -. "translates methods" .-> learningPillar studioNotes -. "records decisions" .-> infraPillar %% STYLES classDef tools fill:#383838,stroke:#FFFFFF,stroke-width:2px,color:#F4F4F4; classDef scenes fill:#D5E8D4,stroke:#82B366,stroke-width:2px,color:#1A1A1A; classDef learning fill:#BAE8FC,stroke:#6C8EBF,stroke-width:2px,color:#1A1A1A; classDef infra fill:#E7D7FF,stroke:#7C5CBF,stroke-width:2px,color:#1A1A1A; classDef cross fill:#F8E4C8,stroke:#8A5A2B,stroke-width:2px,color:#1A1A1A; classDef hub fill:#F2F2CC,stroke:#999,stroke-width:2px,stroke-dasharray: 3 3,color:#1A1A1A; class thesis,toolsPillar,toolsAudio,tmsLib,seedBox,Horizon,DustPress,lofiSampler,PdRepo,VCVpatch,toolsControl,MOARkNOBS42,MN42Configurator,arduinoSketches,microGranny2,x0xb0x,toolsAnalysis,frZone,teensyDSP tools; class scenesPillar,scenesWorks,perceptualDrift,pointyClumps,droneChorus,roomLens,StringFieldNode,DiceLoopNode,hallwayReactor,ArduinoSculpture,HumanBuffer,memory_engine,scenesStage,liveRig,liveRigCtrl,interstream,maelstrom,scVideoMixer,clipFoundry,deskCam scenes; class learningPillar,learnCurricula,cMCurricula,scratch,printing,lego,piper,dronesEd,privacyMedia,learnFactory,SyllabusRepo,ART215,learnDocs,repairStudio,machineDocs,learnOps,teacherOps learning; class infraPillar,infraLMS,djangoLMS,classhub,infraStack,infraFleet,piImaging,docker,server,openvpn,infraArchive,llfs,studio1,ghPages,infraLab,homeauto,turingpi2,printServer,infraGov,governance infra; class studioNotes cross; class agencyHub,opennessHub,resilienceHub hub;
Choose a doorway
Learning
Curricula and learning environments for justice-centered digital literacy.
Explore learningSystems & Distribution
Infrastructure, publishing workflows, and governance that move the work outward.
Explore systemsCross-project layer
Distilled patterns, decisions, trusted reference, and teaching cards harvested from the project repos.
Open studio-notesReading rules
How to read the fleet without overreading it
The portfolio carries public claims and selected proof objects. Repositories carry live implementation truth. Atlas carries the relationships between those things. Method notes explain the reusable patterns that keep the claims legible.
- Methods names the cross-project patterns: evidence, documentation, assumption ledgers, and consent-forward systems.
- Privacy & Ethics explains why some work remains redacted, staged, or private.
- Projects marked needs proof or public-safe excerpt are intentionally constrained until stronger evidence is surfaced.