Skip to main content

VideoQ developer documentation

VideoQ is a learning app that lets you ask questions about videos and jump straight to the scenes that support the answers. Organize videos into courses, share them, and learn through Q&A or guided questions and hints.

This site helps new contributors run the app and make their first small change. You do not need to read every design diagram before getting started.

New to the project?

Follow these steps to connect the user experience with the implementation.

StepPageReady to move on when…
1Run the development environmentYou can log in locally
2Add a video and ask questionsYou can follow an answer's citation to a scene in the video
3Find your way around the codeYou know where the UI, API, and video processing live
4Make your first changeYou can submit a small change with verification results for review

For documentation-only changes, start with Update the documentation.

What to know first

  • A video is one learning resource; a course groups videos for questions and sharing. See the data model
  • React handles the UI, Hono handles the API, and Python handles time-consuming video processing. See the architecture
  • Transcription, search preparation, and learning data generation happen in sequence. Not every feature is ready immediately after upload. Understand the states

Find the guide for your task

What you want to doGuide
Change screens, copy, or formsChange the frontend
Add data or operations to the APIChange the API
Change tables or columnsChange the database
Change transcription, indexing, or learning dataChange asynchronous video processing
Verify a changeTests and verification commands
Troubleshoot startup or video processingTroubleshooting

Explore the details

Use Design reference in the sidebar when you need a diagram or specification. Look up database names in the data dictionary and abbreviations in the glossary.