-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
educationfeaturephase-2-enhancementJanuary 2025 student workJanuary 2025 student workpriority: highImportant for Phase 2Important for Phase 2student-readyReady for student to pick upReady for student to pick upteam: internalWork being handled by internal student developersWork being handled by internal student developers
Milestone
Description
Goal
Set up Keystatic CMS to enable Git-based content management and move away from Google Sheets round-tripping.
Context
See full migration plan: .github/MIGRATION_TO_KEYSTATIC.md
Current Problem: Lessons are stored in Google Sheets and fetched via CSV at build time. This creates issues with version control, code review, and collaborative editing.
Solution: Use Keystatic CMS with Astro content collections (singletons) for each lesson.
Tasks
- Install Keystatic dependencies
npm install @keystatic/core @keystatic/astro
- Create
keystatic.config.tsin project root - Configure Keystatic for GitHub storage
- Set up authentication for Keystatic admin UI
- Add Keystatic route integration to
astro.config.mjs - Create
/keystaticadmin page - Test local editing at
http://localhost:4321/keystatic - Document Keystatic setup in STUDENT_README.md
Acceptance Criteria
- Keystatic admin UI accessible at
/keystaticroute - Can authenticate with GitHub
- Configuration file properly set up
- Documentation updated with Keystatic usage instructions
Reference Implementation
- UCLA IMLS Open Science project (uses same pattern)
- Keystatic Docs
- Keystatic + Astro Guide
Time Estimate
4-6 hours
Dependencies
None - this is the foundation for the other migration issues
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
educationfeaturephase-2-enhancementJanuary 2025 student workJanuary 2025 student workpriority: highImportant for Phase 2Important for Phase 2student-readyReady for student to pick upReady for student to pick upteam: internalWork being handled by internal student developersWork being handled by internal student developers
Type
Projects
Status
No status