Skip to content

ojtechbot/Apojtech

Repository files navigation

APOJ LMS Lite 🚀

Next.js React Tailwind CSS Firebase Genkit

A modern, AI-powered Learning Management System built with the latest web technologies. This platform provides a seamless experience for both students and administrators, featuring AI-driven tools for content creation, grading, and personalized learning.

✨ Features

  • 📚 Course & Lesson Management: Easily create, update, and organize courses and lessons through a user-friendly admin panel.
  • 🤖 AI Content Creation:
    • Course from Text: Generate a complete course structure from a block of raw text.
    • Image Generation: Automatically design a unique banner illustration for each course using AI.
    • Text-to-Speech: Create audio versions of text lessons with a single click.
  • 📝 Assignments & Quizzes:
    • AI-Powered Grading: Get instant, detailed feedback on assignments.
    • Quiz Generation: Automatically create quizzes from selected lesson content.
  • 👤 User & Admin Roles: Separate dashboards and functionalities for students and administrators.
  • 🌐 Interactive Code Playground: A project-based coding environment where students can practice and save their work.
  • 💬 Community Discussion Board: A forum for students to ask questions and collaborate.
  • 🔔 Notification System: Keep users updated on new assignments, grades, and discussion replies.

🛠️ Tech Stack

  • Framework: Next.js (with App Router)
  • UI: React, ShadCN UI, Tailwind CSS
  • State Management: React Hooks & Context API
  • Backend & Database: Firebase (Firestore, Authentication, Storage)
  • Generative AI: Google AI with Genkit
  • Deployment: Firebase App Hosting

🚀 Getting Started

Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/ojtechbot/Apojtech.git
    cd Apojtech
  2. Install NPM packages:

    npm install
  3. Set up Firebase:

    • Create a new project on the Firebase Console.
    • Go to Project Settings > General.
    • Under "Your apps", select the Web app icon (</>).
    • Copy the firebaseConfig object.
    • Paste the config into src/lib/firebase.ts, replacing the existing placeholder config.
  4. Run the development server:

    npm run dev

    Open http://localhost:9002 with your browser to see the result.

📁 Folder Structure

.
├── src
│   ├── ai                 # Genkit flows and AI-related logic
│   ├── app                # Next.js App Router pages and layouts
│   │   ├── admin          # Admin-specific pages
│   │   ├── (student)      # Student-facing pages (implicit layout)
│   │   └── api            # API routes (used by Genkit)
│   ├── components         # Reusable UI components
│   │   ├── layout         # Header, Sidebar, etc.
│   │   └── ui             # ShadCN UI components
│   ├── hooks              # Custom React hooks (e.g., useAuth)
│   ├── lib                # Core libraries and utilities (Firebase, types)
│   └── services           # Data-fetching services
├── public                 # Static assets
└── ...                    # Configuration files

This project provides a robust foundation for building a full-featured, AI-enhanced LMS. Enjoy exploring and building!

About

APOJTech lms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages