-
Notifications
You must be signed in to change notification settings - Fork 4
Documentation
Documentation ensures your work is understandable, maintainable, and transferable β especially across multiple quarters and teams.
Good documentation saves time, prevents confusion, and accelerates onboarding for new contributors.
This page outlines the core expectations for documentation within the practicum, including READMEs, wikis, comments, diagrams, and tooling.
View README Guidelines
Every project must have a clear and informative README.
A strong README should include:
1. Project Overview
- What the project is
- What problem it solves
2. Installation Instructions
- Dependencies
- Setup steps
- Required tools
3. How to Run the App
- CLI commands
- Platform-specific notes
4. Contribution Workflow
- Branching expectations
- PR standards
- Coding standards link
5. Testing Instructions
- How to execute tests
- Required test coverage (if applicable)
- Screenshots / GIFs
- Feature list
- Release notes
- Link to wiki pages
AI should be used to:
- Draft initial README structure
- Improve clarity and tone
- Catch missing steps
AI should enhance clarity, not replace understanding.
View Wiki Documentation Guidelines
Wikis act as the persistent knowledge base for the practicum.
- Installation/setup guides
- Coding standards
- Troubleshooting instructions
- Architecture notes
- Engineering best practices
- Deployment process
- Update documentation alongside major feature changes
- Remove deprecated sections
- Revise outdated guidance
- Add summaries after team decisions
- Summarizing discussions into documentation
- Consolidating multiple docs into one clearer page
- Proofreading existing content
- Providing quick markdown and HTML
View Code Commenting Standards
Code comments should explain intent and reasoning.
- Why a decision was made
- Why something is necessary
- Why an exception exists
// required because API occasionally double-fires this callback
// avoiding += here due to rounding issues with floating point math
// increments x by 1
x++
- TSDoc/JSDoc encouraged for shared utilities
- Triple-quote docstrings for:
- functions
- classes
- modules
- Drafting documentation comments
- Condensing logic explanations
- Explaining complex functions succinctly
View Diagram & Technical Spec Guidelines
Diagrams communicate complex systems more effectively than text alone.
- System architecture
- Component structure
- API flow charts
- Deployment pipelines
- Data flow diagrams
- UX flow maps
- draw.io (strongly recommended)
- Lucidchart
- Excalidraw
- Whimsical
- Figma
- Free
- Browser-based
- Exports to GitHub markdown
- Integrates with Google Drive
- Diagram templates included
- Use descriptive labels
- Avoid clutter
- Update diagrams following major changes
- Version-control diagrams when possible
- Purpose
- Context
- Key decisions
- Dependencies
- Risks
- Alternatives considered
- Draft spec writing
- Summarizing architecture discussions
- Drafting system overview documents
Home β’ New Student Onboarding β’ Guides β’ Projects β’ Code of Conduct β’ FAQ
Last updated: 12/7/2025