Skip to content

dirgnic/eduKit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

49 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EduKit πŸ“š

An intelligent educational platform with interactive learning paths and AI-powered feedback.

πŸš€ Tech Stack

Backend

  • Java 21 (LTS)
  • Spring Boot 3.2.0
  • Firebase (Firestore & Authentication)
  • Google Cloud Vertex AI (Gemini 1.5)

Frontend

  • React + TypeScript
  • React Router
  • Firebase SDK

πŸ“¦ Project Structure

edukit/
β”œβ”€β”€ backend/               # Spring Boot backend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   └── main/
β”‚   β”‚       β”œβ”€β”€ java/com/edukit/
β”‚   β”‚       β”‚   β”œβ”€β”€ config/       # Configuration classes
β”‚   β”‚       β”‚   β”œβ”€β”€ controller/   # REST controllers
β”‚   β”‚       β”‚   β”œβ”€β”€ model/        # Data models
β”‚   β”‚       β”‚   └── service/      # Business logic
β”‚   β”‚       └── resources/
β”‚   β”‚           └── application.yml
β”‚   └── pom.xml
β”‚
β”œβ”€β”€ frontend/              # React frontend (to be implemented)
└── README.md

πŸƒ Getting Started

Prerequisites

  • Java 21 or higher
  • Maven 3.9+
  • Node.js 18+ (for frontend)
  • Firebase account
  • Google Cloud account (for AI features)

Backend Setup

  1. Clone the repository

    git clone git@github.com:dirgnic/eduKit.git
    cd eduKit
  2. Configure Firebase (Optional - can run in mock mode)

    • Place your firebase-credentials.json in the backend/ directory
    • Update backend/src/main/resources/application.yml with your Firebase URL
  3. Run the backend

    cd backend
    mvn spring-boot:run

    The backend will start on: http://localhost:8080/api

  4. Test the API

    curl http://localhost:8080/api/health

Frontend Setup (Coming Soon)

cd frontend
npm install
npm start

🌟 Features

Implemented

βœ… RESTful API architecture
βœ… User authentication (ready for Firebase)
βœ… Course management
βœ… Lesson organization
βœ… Progress tracking
βœ… Assignment submissions
βœ… AI-powered suggestions (ready for Vertex AI)
βœ… Interactive course maps
βœ… Health monitoring endpoints

In Progress

🚧 React frontend
🚧 Firebase integration
🚧 Google Cloud AI integration

πŸ”Œ API Endpoints

Health Check

GET /api/health          # Get service status
GET /api/health/ping     # Simple ping

Courses

GET    /api/courses      # List all courses
GET    /api/courses/{id} # Get specific course
POST   /api/courses      # Create new course
PUT    /api/courses/{id} # Update course
DELETE /api/courses/{id} # Delete course

πŸ‘₯ User Roles

  • Teachers: Full access to create/edit content and view all student data
  • Students: View own progress and assignments

πŸ› οΈ Development

Run in Development Mode

cd backend
mvn spring-boot:run -Dspring-boot.run.arguments="--spring.profiles.active=dev"

Build for Production

cd backend
mvn clean package
java -jar target/edukit-backend-1.0.0.jar

πŸ“ Environment Variables

Create a backend/src/main/resources/application-local.yml for local configuration:

firebase:
  credentials-path: ./firebase-credentials.json
  database-url: https://your-project.firebaseio.com

google:
  cloud:
    project-id: your-project-id
    location: us-central1

🀝 Contributing

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

πŸ“„ License

This project is licensed under the MIT License.

πŸ‘¨β€πŸ’» Author

EduKit Team


Status: Backend βœ… Running | Frontend 🚧 In Development

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •