Skip to content

Video screening, open for everyone. Record, review, and evaluate participants for any type of assessment.

License

Notifications You must be signed in to change notification settings

dylnbk/open-screen

Repository files navigation

OpenScreen

AI-Powered Video Screening Platform

OpenScreen is an open-source video screening platform that uses optional AI to analyze and score video responses. Perfect for recruitment, education, training, and any type of assessment that benefits from video submissions.

🌟 Features

  • Custom Campaigns: Create purpose-specific video assessment campaigns
  • AI-Powered Analysis: Automatic scoring and feedback using Google Gemini
  • Flexible Scoring: Create custom rubrics or use AI-generated scoring criteria
  • Modern UI: Clean, responsive interface with light/dark mode support
  • Credit System: Pay-per-use model with Stripe integration
  • Firebase Backend: Scalable, serverless architecture
  • Secure & Private: Built-in authentication and authorization

πŸš€ Quick Start

Prerequisites

  • Node.js 20.x or higher
  • Firebase project (Blaze plan for production)
  • Google Gemini API key
  • Stripe account (optional)

Installation

  1. Clone the repository

    git clone <your-repo-url>
    cd open-screen
  2. Install dependencies

    cd openscreen-workspace
    npm install
  3. Configure environment variables

    cp .env.local.example .env.local
    # Edit .env.local with your credentials
  4. Start development server

    npm run dev
  5. Open your browser Navigate to http://localhost:3000

πŸ“– Full Documentation

For complete setup instructions, deployment guides, and configuration details, see:

πŸ—οΈ Architecture

open-screen/
β”œβ”€β”€ openscreen-workspace/     # Next.js application
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/             # Next.js App Router pages and API routes
β”‚   β”‚   β”œβ”€β”€ components/      # React components
β”‚   β”‚   β”œβ”€β”€ contexts/        # React contexts
β”‚   β”‚   β”œβ”€β”€ lib/            # Utilities and configurations
β”‚   β”‚   └── types/          # TypeScript type definitions
β”‚   β”œβ”€β”€ public/             # Static assets
β”‚   └── .env.example        # Environment variable template
β”œβ”€β”€ functions/              # Firebase Cloud Functions
β”‚   └── src/
β”‚       β”œβ”€β”€ index.ts       # Function exports
β”‚       └── triggers.ts    # Firestore triggers for AI processing
└── README.md              # This file

πŸ”§ Tech Stack

  • Frontend: Next.js 15, React 19, Tailwind CSS
  • UI Components: Radix UI, Lucide Icons
  • Backend: Firebase (Auth, Firestore, Storage, Cloud Functions)
  • AI: Google Gemini 2.5
  • Payments: Stripe Checkout & Webhooks
  • Deployment: Firebase App Hosting

πŸ“ License

This project is open source and available under the GNU Affero General Public License.

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“§ Support

For issues and questions:

πŸ™ Acknowledgments

Built with modern web technologies and powered by:


Made with ❀️ for the open-source community

About

Video screening, open for everyone. Record, review, and evaluate participants for any type of assessment.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Languages