Aesthetic Computer Documentation System#
Overview#
This folder serves as the central documentation hub for Aesthetic Computer, covering:
- JavaScript API Reference - The interface provided by
disk.mjsto AC pieces - KidLisp Language Reference - Syntax and functions for the KidLisp programming language
- Piece Documentation - How to create and structure AC pieces
- System Architecture - Understanding the AC ecosystem
- Development Tools - CLI tools and development workflows
Documentation Status & Coverage#
Current State#
- docs.js: Comprehensive but manually maintained API docs for web interface
- disk.mjs: 9940 lines of API implementation, needs dynamic analysis
- kidlisp.mjs: 10085 lines with embedded LLM API spec, well documented
- prompt.mjs: Command list for piece discovery and LLM integration
Goals#
- Dynamic API surface analysis system
- Automated documentation coverage reporting
- Test suite for validating API documentation
- Integrated CLI documentation explorer for Emacs
- Centralized piece documentation system
Folder Structure#
reference/
├── README.md (this file)
├── TODO.md (tracking documentation work)
├── api/
│ ├── javascript-api.md (disk.mjs API reference)
│ ├── analysis/ (dynamic API analysis tools)
│ └── coverage/ (documentation coverage reports)
├── kidlisp/
│ ├── language-reference.md (KidLisp syntax guide)
│ ├── functions.md (built-in functions)
│ └── examples/ (example KidLisp programs)
├── pieces/
│ ├── structure.md (how pieces work)
│ ├── templates/ (piece templates)
│ └── catalog/ (documented pieces)
├── system/
│ ├── architecture.md (AC system overview)
│ ├── boot-sequence.md (initialization process)
│ └── networking.md (socket/session systems)
├── tools/
│ ├── cli-explorer.md (emacs docs integration)
│ ├── testing.md (documentation testing)
│ └── scripts/ (analysis and validation tools)
└── ableton/ (existing Ableton Live integration docs)
└── ... (current ableton files moved here)
Next Steps#
- Create folder structure with proper organization
- Move existing Ableton docs to dedicated subfolder
- Set up analysis tools for dynamic API discovery
- Create documentation templates for consistent formatting
- Integrate with development workflow via Emacs and CLI tools
Integration Points#
- docs.js: Web-based API documentation endpoint
- prompt.mjs: Command discovery and piece launching
- kidlisp-tools: CLI tools for KidLisp development
- Emacs configuration: 'docs' tab for reference browsing
- VS Code extension: Documentation integration for development
This system will provide comprehensive, up-to-date documentation that grows with the codebase and supports both interactive exploration and development workflows.