Skip to content

Oriva-Foundation/OrivaTechCamp

Repository files navigation

πŸš€ Oriva Tech Camp (OTC)

The Open-Source Learning Management System for Real-World Tech Education

OTC-banner license contributions status


πŸ“š What is Oriva Tech Camp?

Oriva Tech Camp (OTC) is a full-stack, open-source Learning Management System designed to simulate real-world tech industry workflows. We host a 3-month intensive bootcamp with specialized tracks in:

  • 🎨 Frontend Development β€” React, Next.js, Tailwind CSS
  • βš™οΈ Backend Engineering β€” Node.js, APIs, Databases
  • πŸ§ͺ Software Testing β€” QA automation, test strategies
  • 🎬 Video Editing β€” Production & post-production skills

Our Mission: Prepare learners for the job market with hands-on experience, real instructor feedback, gamification, and peer collaboration.


✨ Key Features

Feature Description Impact
πŸ‘₯ Role-Based Dashboards Customized views for Students, Instructors, and Admins Personalized workflows for each user
🎯 Live Sessions Real-time classes with countdown timers & automated attendance Engagement & attendance tracking
πŸ† Gamification Points system, leaderboards, and achievement badges Motivates learners to excel
πŸ“ Task Portal GitHub link submissions + file uploads with instructor review Collaborative learning
πŸ“Š Analytics & Progress Real-time progress tracking and performance insights Data-driven learning paths
πŸ’¬ Peer Feedback Community discussions and instructor-led reviews Supportive learning environment

πŸ› οΈ Tech Stack

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         🌐 Frontend (Next.js 14+)       β”‚
β”‚   ✨ React | Tailwind CSS | TypeScript  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
             β”‚
             ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚      πŸ” Authentication & Backend        β”‚
β”‚        Supabase (PostgreSQL)            β”‚
β”‚    Auth | Realtime | Storage | Edge Fn β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
             β”‚
             ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚    ☁️ Deployment (Vercel + Supabase)    β”‚
β”‚  Edge Functions | CDN | Auto-scaling    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Tech Stack Details

  • Framework: Next.js (App Router)
  • Styling: Tailwind CSS β€” utility-first, responsive design
  • Language: TypeScript for type safety
  • Backend: Supabase β€” PostgreSQL, Auth, Realtime, Storage
  • Deployment: Vercel for serverless hosting & edge computing

πŸš€ Quick Start

Prerequisites

Ensure you have the following installed:

Installation

  1. Clone the repository:
git clone https://github.com/your-org/oriva-tech-camp.git
cd oriva-tech-camp
  1. Install dependencies:
npm install
# or
pnpm install
  1. Set up environment variables:
cp .env.example .env.local

Then fill in your Supabase credentials from supabase.com.

  1. Start the development server:
npm run dev

Open http://localhost:3000 in your browser. πŸŽ‰


πŸ“‚ Project Structure

oriva-tech-camp/
β”œβ”€β”€ app/                      # Next.js App Router
β”‚   β”œβ”€β”€ dashboard/           # Role-based dashboard routes
β”‚   β”œβ”€β”€ sessions/            # Live session management
β”‚   β”œβ”€β”€ tasks/               # Task portal
β”‚   β”œβ”€β”€ leaderboard/         # Gamification leaderboard
β”‚   └── layout.tsx           # Root layout
β”‚
β”œβ”€β”€ components/              # Reusable React components
β”‚   β”œβ”€β”€ ui/                  # Base UI primitives
β”‚   β”œβ”€β”€ dashboard/           # Dashboard-specific components
β”‚   └── common/              # Shared components
β”‚
β”œβ”€β”€ lib/                     # Utility functions & configs
β”‚   β”œβ”€β”€ supabase/           # Supabase clients & helpers
β”‚   β”œβ”€β”€ auth.ts             # Authentication logic
β”‚   └── hooks/              # Custom React hooks
β”‚
β”œβ”€β”€ public/                  # Static assets
β”‚
β”œβ”€β”€ docs/                    # Project documentation
β”‚   └── ARCHITECTURE.md      # System architecture
β”‚
β”œβ”€β”€ .env.example             # Environment variables template
β”œβ”€β”€ next.config.ts           # Next.js configuration
β”œβ”€β”€ tsconfig.json            # TypeScript configuration
└── tailwind.config.ts       # Tailwind CSS configuration

🎯 User Roles & Features

πŸ‘¨β€πŸŽ“ Student

  • View personalized dashboard with progress tracking
  • Join live sessions with real-time attendance
  • Submit tasks (GitHub links, files, or text)
  • Track points and compete on leaderboards
  • Access instructor feedback and peer discussions

πŸ‘¨β€πŸ« Instructor

  • Create and schedule live sessions
  • Design and post tasks for students
  • Review submissions with inline feedback
  • Award points and manage leaderboards
  • Monitor classroom attendance and engagement

πŸ‘¨β€πŸ’Ό Admin

  • Manage users (students, instructors, admins)
  • Configure course tracks and session schedules
  • View system analytics and reports
  • Manage platform settings and integrations
  • Monitor platform health and performance

πŸ” Architecture Overview

Our system follows a client-server architecture with strong separation of concerns:

Client (Browser)
      ↓
   Next.js (App Router)
   β”œβ”€ Server Components (SSR)
   β”œβ”€ Client Components (Interactivity)
   └─ API Routes (Server Actions)
      ↓
   Supabase Backend
   β”œβ”€ PostgreSQL Database
   β”œβ”€ Auth & RLS (Row-Level Security)
   β”œβ”€ Realtime Subscriptions
   β”œβ”€ File Storage
   └─ Edge Functions

Key Principles:

  • βœ… Server components for data fetching (privacy & performance)
  • βœ… Client components for interactivity (UI state)
  • βœ… RLS policies for database-level security
  • βœ… Realtime subscriptions for live updates

For more details, see docs/ARCHITECTURE.md.


πŸ“– Getting Help

Documentation

Support


🀝 Contributing

We ❀️ contributions! Whether you're fixing bugs, adding features, or improving docs, your help matters.

Ways to Contribute

  1. Code & Features β€” Submit PRs for new features or bug fixes
  2. Documentation β€” Improve guides, examples, and architecture docs
  3. Design & UX β€” Enhance UI/UX and accessibility
  4. Testing β€” Write tests and improve coverage
  5. Volunteer β€” Become an instructor or community mentor
  6. Sponsorship β€” Support the project financially

Quick Start for Contributors

# 1. Fork and clone
git clone https://github.com/<your-username>/oriva-tech-camp.git
cd oriva-tech-camp

# 2. Create a feature branch
git checkout -b feat/your-feature-name

# 3. Install & develop
npm install
npm run dev

# 4. Commit with conventional messages
git commit -m "feat(dashboard): add student progress widget"

# 5. Push and open a PR
git push origin feat/your-feature-name

See CONTRIBUTING.md for detailed guidelines.


πŸ—ΊοΈ Roadmap

Current Version (v1.0)

  • βœ… Role-based dashboards (Student, Instructor, Admin)
  • βœ… Live session scheduling & attendance
  • βœ… Task submission & feedback system
  • βœ… Points & leaderboard system

Planned (v1.1 - v2.0)

  • πŸ”„ Mobile app (React Native)
  • πŸ”„ AI-powered assistant for code review
  • πŸ”„ Advanced analytics & performance insights
  • πŸ”„ Community forum & knowledge base
  • πŸ”„ Integrations (Slack, Discord, Gmail)
  • πŸ”„ Certification program

πŸ“Š Project Stats

GitHub stars GitHub forks GitHub issues GitHub PRs


πŸ’– Supporters & Sponsors

OTC is made possible by the contributions of our amazing community and sponsors.

🌟 Core Contributors

πŸ’° Sponsors

  • Looking for sponsors to support open-source education

If you'd like to sponsor OTC, please reach out to sponsors@orivatechcamp.org.


πŸ“œ License

This project is licensed under the MIT License β€” see LICENSE for details.

Summary

βœ… Free to use, modify, and distribute
βœ… Commercial use permitted
βœ… Attribution required
βœ… Patent indemnification


πŸ”— Useful Links

Resource Link
πŸ“– Docs docs/ARCHITECTURE.md
🀝 Contributing CONTRIBUTING.md
πŸ“‹ Code of Conduct CODE_OF_CONDUCT.md
πŸ› Report a Bug GitHub Issues
πŸ’‘ Request a Feature GitHub Issues
πŸ’¬ Discussions GitHub Discussions

🌟 Show Your Support

If you find OTC helpful, please consider:

  • ⭐ Star this repository on GitHub
  • 🐦 Share on social media (Twitter, LinkedIn)
  • πŸ“’ Tell a friend about the project
  • πŸ’¬ Join discussions and help the community
  • 🀝 Contribute code, docs, or ideas

Made with ❀️ by the Oriva Tech Camp Community

Β© 2026 Oriva Tech Camp. All rights reserved.

πŸš€ Get Started Now β€’ πŸ“– Read the Docs β€’ 🀝 Contribute

About

Oriva Tech Camp (OTC) is a full-stack learning management system built to host intensive 3-month live bootcamps. It features role-based dashboards for managing students, task submissions, and instructor reviews.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Sponsor this project

 

Packages

 
 
 

Contributors