Skip to content

About

Gamma Timetable Chrome Extension: Extracts slide content from Gamma presentations and generates customizable timetables for educators and presenters.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

222 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Gamma Timetable Extension - Documentation

Last Updated: 2025-10-19 Status: βœ… Active - Governance Compliant Governance Version: 1.0.0


🎯 Quick Navigation (AI Agents Start Here)

Looking for something specific? Start here:

  1. Current Sprint β†’ /docs/sprints/ (check latest sprint-XX folder)
  2. Security & Auth β†’ /docs/security/
  3. System Architecture β†’ /docs/architecture/
  4. Feature Specs β†’ /docs/features/
  5. Audit Reports β†’ /docs/audits/
  6. Development Guides β†’ /docs/guides/
  7. Quality Standards β†’ /docs/quality/

πŸ“ Documentation Structure

docs/
β”œβ”€β”€ README.md                    # This file - master navigation
β”œβ”€β”€ sprints/                     # Sprint planning and tracking (NESTED ONLY)
β”‚   β”œβ”€β”€ sprint-XX/              # Each sprint is a directory
β”‚   β”‚   β”œβ”€β”€ README.md           # Sprint navigation (MANDATORY)
β”‚   β”‚   └── *.md                # Sprint documents
β”œβ”€β”€ security/                    # Security, auth, compliance (IMMUTABLE)
β”‚   β”œβ”€β”€ oauth/                  # OAuth implementation
β”‚   β”œβ”€β”€ authentication/         # Auth flows and specs
β”‚   └── audit-trail/            # Security audits (version tracked)
β”œβ”€β”€ architecture/                # System design and architecture
β”œβ”€β”€ features/                    # Feature specifications
β”‚   β”œβ”€β”€ planned/                # Planned features
β”‚   β”œβ”€β”€ in-progress/            # Active development
β”‚   └── completed/              # Completed features
β”œβ”€β”€ audits/                      # Technical audits and analysis
β”œβ”€β”€ processes/                   # Development processes and workflows
β”œβ”€β”€ guides/                      # How-to guides and tutorials
β”œβ”€β”€ quality/                     # Quality standards and governance
└── archived/                    # Legacy documentation (read-only)

πŸ“š Core Documentation

Getting Started

  1. Developer Setup Guide

    • Prerequisites and installation
    • Quick start guide (30 minutes)
    • Environment configuration
    • Development workflow
    • Testing and debugging
    • Deployment procedures
    • Start here if you're new to the project
  2. Local Development Guide

    • Setting up local development environment
    • Extension build for localhost:3000
    • Testing with local API server

Architecture & Design

  1. Architecture Documentation
    • System overview and components
    • Presentation save flow (current implementation)
    • Authentication and security model
    • Database schema and RPCs
    • Essential reading for understanding the system

Operations & Support

  1. Troubleshooting Guide

    • Quick diagnostics for common issues
    • Error code reference table
    • Known issues and workarounds
    • Debugging workflows
    • Emergency procedures (rollback, recovery)
    • Critical for debugging production issues
  2. Testing Guide

    • Test structure and organization
    • Running tests (unit, integration, E2E)
    • Writing new tests
    • Test data management
    • Continuous Integration

πŸ“‹ Documentation Standards

All documentation MUST follow:

  1. βœ… Naming Convention: kebab-case-lowercase.md (no CamelCase, no snake_case)
  2. βœ… Sprint Structure: ALL sprints are nested directories with README.md
  3. βœ… README Required: Every nested folder (2+ files) needs README.md
  4. βœ… AI Navigation: Must be findable in ≀3 file reads
  5. βœ… Security Docs: Immutable with version tracking
  6. βœ… Link Validation: All internal links must be valid

See: /docs/quality/DOCUMENTATION-GOVERNANCE.md for full rules.


πŸ“– Technical Documentation by Topic

Database & Migrations

  • Architecture: Database Schema

    • Core tables: users, presentations, device_tokens
    • Key RPCs: rpc_upsert_presentation_from_device, validate_and_touch_token
    • Performance indexes (Sprint 35 optimizations)
  • Troubleshooting: Database Issues

    • SQL query logging
    • Migration deployment procedures
    • Emergency database recovery

Authentication & Security

Presentation Save Flow

Development Workflow


πŸ”§ Performance & Optimization

Database Performance (Sprint 35)

Frontend Performance

Caching & Monitoring


πŸš€ Deployment & CI/CD

Deployment Procedures

CI/CD Strategy


πŸ›‘οΈ Security & Emergency Procedures

Security Model

Emergency Procedures


πŸ“‹ Sprint Documentation

Sprint 38 (Current)

Sprint 38: Presentation Save Stabilization

  • Stabilize save flow after Oct 3-4 emergency fixes
  • Enable local development environment
  • Comprehensive testing and documentation
  • Status: P2 Documentation Complete βœ…

Historical Context

  • Sprint 26 (Sept 2025): Initial RPC implementation
  • Sprint 35 (Sept 2025): Performance optimizations, rollback from Sprint 36
  • Sprint 37 (Oct 3-4, 2025): Emergency fixes, RPC simplification
  • Sprint 38 (Oct 5, 2025): Stabilization and documentation

See Architecture: Architecture Evolution for detailed timeline.


πŸ” Quick Reference

Common Tasks

Task Documentation
Set up local development Developer Setup
Build extension for local testing Developer Setup: Build Commands
Debug save errors Troubleshooting: Save Issues
Create database migration Developer Setup: Database Changes
Run tests Testing Guide
Deploy to production Developer Setup: Deployment
Rollback production Troubleshooting: Emergency Rollback

Error Code Reference

Code Quick Fix Full Documentation
400 VALIDATION_ERROR Check gamma_url format Troubleshooting
401 Unauthorized Re-pair device Troubleshooting
404 P0001 Verify user in Supabase Auth Troubleshooting
500 22004 Check device token validity Troubleshooting

Essential Commands

# Development
npm run dev                    # Start dev server
npm run build:local           # Build local extension
npm run test                  # Run tests

# Database
supabase start                # Start local database
supabase db reset            # Reset with migrations
supabase db push --linked    # Deploy migrations

# Deployment
npm run build                 # Build production
netlify deploy --prod        # Deploy to Netlify

Full command reference: Developer Setup: Quick Reference


πŸ“ž Support & Escalation

Documentation Issues

  • Missing Documentation: Create issue in GitHub with label documentation
  • Outdated Information: Submit PR with corrections
  • Unclear Instructions: Add comment on specific doc line in GitHub

Technical Support

Level 1: Self-Service

Level 2: Developer Team

Level 3: Infrastructure Team

  • Database/migration issues
  • Netlify/Supabase outages
  • DNS/networking problems

Level 4: Emergency

See Troubleshooting: Support Escalation for full details.


πŸ”„ Documentation Maintenance

Review Cycle

  • After Each Sprint: Update architecture and troubleshooting docs
  • After Major Incidents: Document root cause and fixes
  • Quarterly: Review and update all documentation for accuracy

Contributing to Documentation

  1. Before Writing:

    • Check if documentation already exists
    • Review existing structure and style
    • Identify target audience (devs, ops, support)
  2. Writing Guidelines:

    • Use clear, concise language
    • Include code examples and commands
    • Add diagrams for complex flows
    • Link to related documentation
  3. After Writing:

    • Update this index (README.md)
    • Test all commands and procedures
    • Request peer review
    • Update "Last Updated" date

Documentation Standards

  • Markdown: Use GitHub-flavored markdown
  • Code Blocks: Always specify language (bash, typescript, etc.)
  • File Paths: Use absolute paths or clearly indicate relative context
  • Commands: Include expected output or result
  • Links: Use relative links within docs/ folder

πŸ“ˆ Recent Updates

October 2025 (Sprint 38)

  • βœ… Created ARCHITECTURE.md - Comprehensive system architecture
  • βœ… Created TROUBLESHOOTING.md - Debugging guide with error codes
  • βœ… Created DEVELOPER_SETUP.md - Developer onboarding guide
  • βœ… Updated LOCAL_DEVELOPMENT.md - Local environment setup
  • βœ… Created TESTING.md - Testing guide and best practices
  • βœ… Created README.md (this file) - Documentation index

September 2025 (Sprint 35)

  • Database performance optimization documentation
  • React/Next.js optimization guides
  • CI/CD strategy documentation

Document Maintained By: Development Team Last Major Review: October 2025 (Sprint 38) Next Review: After Sprint 39 or major architectural changes

About

Gamma Timetable Chrome Extension: Extracts slide content from Gamma presentations and generates customizable timetables for educators and presenters.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages