Skip to content

AntonKluge/VibeCheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VibeCheck - Real-time Classroom Engagement Tool

A modern, evidence-based web application that bridges the communication gap between educators and students during live instruction. VibeCheck provides anonymous, real-time feedback channels that help instructors gauge understanding and adjust their teaching dynamically.

🎯 Purpose

In traditional classroom settings, students often hesitate to interrupt or ask questions due to social pressure, fear of judgment, or cultural norms. VibeCheck solves this by providing:

  • Anonymous feedback channels that remove social barriers
  • Real-time insights for instructors to adjust teaching dynamically
  • Minimal disruption to the learning flow
  • Universal accessibility across devices and technical skill levels

✨ Key Features

For Educators

  • One-click session creation with unique class codes
  • Real-time dashboard with live visualization of student responses
  • QR code sharing for instant student access
  • Session management with pause/resume functionality
  • Anonymous insights to gauge class understanding and energy

For Students

  • Effortless joining via QR code scanning or direct links
  • Three simple responses: 👍 I understand, 🤔 I need help, 😴 I need a break
  • Complete anonymity with no registration required
  • Immediate feedback with visual confirmation

🚀 Technology Stack

  • Framework: Next.js 15 with App Router
  • Language: TypeScript (strict mode)
  • Styling: Tailwind CSS v4
  • Package Manager: Yarn Berry (v4.9.2)
  • Real-time: Polling-based updates (2-second intervals)
  • QR Codes: qrcode & qr-scanner libraries
  • Icons: Lucide React
  • Logging: Winston for structured logging

🏗️ Architecture

Application Structure

src/
├── app/                    # Next.js App Router
│   ├── page.tsx           # Landing page
│   ├── scan/              # QR scanner interface
│   ├── session/           # Student & educator interfaces
│   └── api/               # Backend endpoints
├── components/            # Reusable React components
├── lib/                   # Shared utilities and business logic
└── types/                 # TypeScript definitions

Data Flow

  1. Educator creates class → Gets unique session ID
  2. Students scan QR code/click link → Join class
  3. Students submit feedback → Real-time dashboard updates
  4. Educator monitors engagement → Adjusts teaching accordingly

🎨 Design Philosophy

VibeCheck is built on 11 evidence-based UI/UX design principles that ensure exceptional user experience:

  1. Simple and Natural Dialogue - Intuitive workflows that match mental models
  2. Use Users' Language - Educational terminology, not technical jargon
  3. Maintain Consistency - Unified design system across all interactions
  4. Reduce Memory Load - Recognition over recall through visual symbols
  5. Direct Attention - Clear visual hierarchy guiding user focus
  6. Meaningful Feedback - Immediate, contextual response to all actions
  7. Offer Shortcuts - Keyboard shortcuts for power users
  8. Clearly Mark Exits - Multiple escape paths from every interaction
  9. Minimize Error Risk - Error prevention through smart interface design
  10. Constructive Error Handling - Plain language with specific solutions
  11. Adequate Help - Contextual assistance when and where needed

These principles result in:

  • Zero learning curve for both educators and students
  • Enhanced accessibility across diverse user groups
  • Improved reliability through error prevention and recovery
  • Greater efficiency via shortcuts and streamlined workflows

🚀 Quick Start

Prerequisites

  • Node.js 18 or later
  • Yarn 4

Installation

git clone <repository-url>
cd vibecheck
yarn install
yarn dev

Open http://localhost:3000 to start using VibeCheck.

Usage

For Educators:

  1. Click "Start Class Check-in"
  2. Share the QR code with students
  3. Monitor real-time engagement visualization

For Students:

  1. Scan the class QR code
  2. Express how you're feeling
  3. Continue providing feedback throughout class

📖 Documentation

The project includes comprehensive documentation in two focused documents:

  • VibeCheck Overview - Detailed feature descriptions, architecture, use cases, and technical implementation
  • Design Principles - Complete guide to the 11 UI/UX principles and their implementation in the application

🌐 Deployment

Vercel (Recommended)

yarn build
# Deploy to Vercel platform

Docker

docker build -t vibecheck .
docker run -p 3000:3000 vibecheck

Environment Variables

NEXT_PUBLIC_BASE_URL=https://your-domain.com

🔮 Future Enhancements

  • WebSocket integration for true real-time updates
  • Redis backend for persistent session storage
  • Class analytics and export features
  • Custom response options for specialized use cases
  • LMS integrations for seamless workflow
  • Mobile applications for enhanced mobile experience
  • Advanced analytics for learning insights

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push to branch: git push origin feature/amazing-feature
  5. Open a Pull Request

Development Guidelines

  • Follow the established design principles
  • Maintain TypeScript strict mode compliance
  • Use Tailwind CSS for all styling
  • Ensure accessibility standards (WCAG 2.1 AA)
  • Test across different devices and browsers
  • Document new features and API changes

📊 Performance

  • Response Time: <100ms for feedback submission
  • Update Frequency: 2-second polling intervals
  • Concurrent Users: Optimized for typical classroom sizes (5-50 students)
  • Accessibility: Full keyboard navigation, screen reader support
  • Mobile First: Responsive design with touch-friendly interactions

🛡️ Privacy & Security

  • No personal data collection - completely anonymous feedback
  • Session isolation - data not shared between classes
  • Automatic cleanup - session data expires appropriately
  • Secure session IDs - cryptographically secure identifiers

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Built with Next.js, React, and TypeScript
  • Icons by Lucide React
  • Inspired by the need for better classroom engagement tools
  • Guided by evidence-based UI/UX design principles

Ready to transform your classroom engagement? Start with VibeCheck today and create more responsive, inclusive learning environments where every student's voice can be heard.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published