A React application for children's church that enables streaming via YouTube or Discord, with interactive features for learning and engagement.
- Support for YouTube embed (private or public streams)
- Discord channel embedding
- Easy stream source switching
- HTML5 Canvas-based drawing tool
- 10 color options
- Adjustable brush size (1-20)
- Clear canvas function
- Save drawings as PNG
- Touch-friendly for tablets
- Teacher Mode: Create and manage questions
- Multiple choice questions
- True/False questions
- Ask questions to students in real-time
- Student Mode: Answer questions and track score
- Questions stored in browser localStorage
- Create lesson notes with scripture references
- Rich text editing
- Local storage persistence
- Export notes as text files
- Print functionality
- Manage multiple saved lessons
npm install
npm run devThe app will be available at http://localhost:5173
npm run buildThe production files will be in the dist/ directory.
npm run preview- Select stream type (YouTube or Discord)
- Enter the stream URL:
- YouTube: Paste the full URL or video ID
- Discord: Paste the Discord channel embed URL
- Click "Load Stream"
- Select a color from the palette
- Adjust brush size with the slider
- Draw on the canvas with mouse or touch
- Click "Clear" to start over
- Click "Save" to download your drawing
- Switch to "Teacher Mode"
- Select question type (Multiple Choice or True/False)
- Enter your question
- Add answer options (for multiple choice)
- Select the correct answer
- Click "Add Question"
- Click "Ask" to present the question to students
- Switch to "Student Mode"
- Wait for teacher to ask a question
- Select your answer
- Submit to see your score update
- Enter a lesson title
- Add scripture reference (e.g., "John 3:16")
- Write your lesson notes
- Click "Save Lesson"
- Access saved lessons from the sidebar
- Export or print lessons as needed
- React 18 - UI framework
- Vite - Build tool
- Tailwind CSS - Styling
- Local Storage - Data persistence
Modern browsers with support for:
- HTML5 Canvas
- ES6+
- Local Storage
- CSS Grid/Flexbox
Created for Yeladim Church with ❤️