Skip to content
eduhub-orgPublic

About

A comprehensive education platform focusing on course applications, event registrations, learning communities, and more.

Topics

Resources

Contributing

Stars

14 stars

Watchers

2 watching

Forks

Repository files navigation

EduHub 🎓

Release Semantic Release License: AGPL v3

An education platform for course applications, event registrations, learning communities, student projects, and certificates — the software behind edu.opencampus.sh.

EduHub Screenshot

Introduction

EduHub centralizes educational offerings: learners discover courses and events, apply or register, work on projects, and receive certificates. Organizations manage programs, courses, sessions, experts, and enrollments from a single admin area.

✨ What's inside

  • Courses & applications — catalog, application/enrollment flows with admission decisions, sessions, attendance, and course content pages
  • Events & registrations — event registrations with confirmation and reminder emails
  • Projects — proposal → publication workflow with documentation templates (manual)
  • Certificates & degrees — achievement and attendance certificates from configurable HTML templates (manual)
  • Payments — Stripe checkout for paid courses and job postings (docs)
  • Surveys — Formbricks integration for questionnaires and pricing add-ons (docs)
  • Chat — Matrix/Element spaces and rooms created per program and course
  • Automated emails — registration mails and session reminders (setup)
  • Distribution — embeddable widgets (courses, projects, jobs) and a MOOCHub feed
  • Multi-portal & i18n — host-based portal resolution with per-portal branding, German/English UI

🚀 Quick Start

  1. Install Docker.
  2. Clone this repository.
  3. Create your local env file (optional for a basic setup; required for Stripe/Formbricks/Matrix/Ghost integrations):
    cp .env.example .env
    # fill in only the integrations you need — see comments in .env.example
  4. Run docker compose up (first start builds images and applies migrations and seeds; give it a few minutes).
  5. Open http://localhost:5000 and log in as admin@example.com / dev.

Local services:

Service URL Notes
EduHub frontend http://localhost:5000 Next.js dev server, hot reload
StuJo frontend http://localhost:5001 job board portal, same backend
Hasura http://localhost:8080 GraphQL endpoint at /v1/graphql, admin secret myadminsecretkey
Keycloak http://localhost:28080 admin console, admin / admin
File storage emulator http://localhost:4001 serves /emulated-bucket
Serverless functions ports 42000–42026 Node 42000–42024, Python 42025–42026

Note: See the Development Guide for environment variables, seeds, ports, and naming conventions.

🛠️ Repository layout

Path Contents
frontend-nx/ Yarn-workspace monorepo of Next.js apps: apps/edu-hub (main app), apps/stujo (job board)
backend/ Hasura metadata, SQL migrations, and seeds
functions/ Node and Python serverless functions (guide)
keycloak/ Keycloak realm imports, themes, and custom listeners
infrastructure/ Terraform for the Google Cloud staging/production environments
docs/ Feature documentation, user manuals, and ADRs (docs/adr/)
.github/workflows/ CI: code checks, image builds, releases, infrastructure deploys

💻 Tech Stack

👥 Contributing

We welcome contributions from everyone. Please read the Contributing Guide for:

  • Branch structure (develop → staging → production) and release flow
  • Conventional Commits guidelines
  • Pull request and automated release process
  • Code style and testing requirements

Frontend commands (from frontend-nx/, Node 22 and Yarn 3.4.1):

yarn install
yarn lint          # ESLint, matches CI
yarn test          # Jest + React Testing Library
yarn type-check    # tsc --noEmit
yarn apollo        # regenerate GraphQL types after query/schema changes

Schema changes must be applied as Hasura migrations in backend/migrations/ with matching metadata — see the Development Guide.

📝 License

This project is licensed under the AGPLv3 License.

About

A comprehensive education platform focusing on course applications, event registrations, learning communities, and more.

Topics

Resources

Contributing

Stars

14 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages