ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
EduHub와 함께 학습 여정을 시작하고 활발한 커뮤니티에 참여해 기술·비즈니스·창의성 분야 전문가 강좌를 발견하세요
Starte deine Lernreise mit EduHub von opencampus.sh! Werde Teil einer aktiven Community und entdecke Expertenkurse in Tech, Business und Kreativität.
교육PLpgSQL · TypeScriptGitHub @eduhub-org온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
A comprehensive education platform focusing on course applications, event registrations, learning communities, and more.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
An education platform for course applications, event registrations, learning
communities, student projects, and certificates — the software behind
edu.opencampus.sh.
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.README 전문 보기 ↗An education platform for course applications, event registrations, learning communities, student projects, and certificates — the software behind edu.opencampus.sh.
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.
cp .env.example .env
# fill in only the integrations you need — see comments in .env.example
docker compose up (first start builds images and applies migrations
and seeds; give it a few minutes).http://localhost:5000 and log in as [email protected] /
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 |
The local login and registration screens show SSO button previews (DLC, Google,
LinkedIn, GitHub) when the realm has no configured identity providers. They use
the shared production layout but do not authenticate; a note identifies the
preview. Set KEYCLOAK_SSO_PREVIEW=false in .env and run
docker compose up -d keycloak to hide them. Real configured providers always
replace the previews. Production defaults to previews off. For Tailscale
previews, use scripts/start-network-preview.sh to retain the network bindings.
Note: See the Development Guide for environment variables, seeds, ports, and naming conventions.
| 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 |
admin, instructor,
user, anonymousWe welcome contributions from everyone. Please read the Contributing Guide for:
develop → staging → production) and release flowFrontend 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.
This project is licensed under the AGPLv3 License.