shiping
면접·시험 도우미, AI가 실시간으로 풀이 아이디어를 제공
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Self-hosted tool to build interactive online courses and run them in a built-in LMS
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗CourseCraft is a self-hosted e-learning authoring tool and learning management system (LMS). Build interactive online courses in your browser, publish them to the standards other systems understand, and deliver, assign and track them for your learners — all on your own server, with no telemetry and no third-party services.
One installation can serve a single organisation or, in multi-tenant mode, many separate organisations from the same deployment.
Author courses in the browser
.pptx) decks as a starting point.Publish to the standards your LMS or customers use
Deliver and track learning (built-in LMS)
Sign-in and administration
Self-hosted and private by design
Screenshots coming soon.
Requirements: Docker Engine 26+ with Compose 2.30+, about 2 GB RAM, amd64 or arm64. You do not need the source code:
mkdir coursecraft && cd coursecraft
curl -fsSLO https://github.com/Chaoscent/coursecraft/releases/latest/download/docker-compose.yml
curl -fsSL -o .env https://github.com/Chaoscent/coursecraft/releases/latest/download/env.example
# In .env, set COURSECRAFT_PUBLIC_URL unless you are on http://localhost:3000
docker compose up -d
Note: these download commands work once the first GitHub release is published. Until then, use the Build from source steps under Developers to run CourseCraft.
Open http://localhost:3000. The setup wizard asks for a one-time token, which you read from the log:
docker compose exec app coursecraft setup-token
Secrets (database passwords and the encryption key) are generated on first
start and kept in a Docker volume. Pin a version with
COURSECRAFT_VERSION=1.2.3 in .env; update with
docker compose pull && docker compose up -d.
For production put CourseCraft behind a reverse proxy with TLS (examples in
docs/reverse-proxy/). Course playback should use its
own web address — see the configuration notes.
For high availability, several replicas and object (S3) storage, use the Helm chart. See docs/kubernetes.md. Running one installation for many customer organisations is described in docs/multi-tenancy.md, and optional billing in docs/billing.md.
docker compose exec app coursecraft backup # writes /data/backups/coursecraft-<time>.tar
docker compose stop app converter
docker compose --profile maintenance run --rm maintenance restore /data/backups/coursecraft-<time>.tar
docker compose up -d
Backups contain personal data and course files — copy them off the host and store them encrypted. The encryption key lives in a separate secrets volume that is not part of a backup; keep a copy of it, or encrypted values (2FA, AI and SMTP secrets) cannot be read after restoring on a new host.
CourseCraft underwent an in-depth internal security review in October 2026 covering tenant isolation, access control, file uploads and course playback, injection, and secrets handling. All high- and medium-severity findings were fixed and are covered by automated regression tests.
Security is also built into how the app is written and run: SQL only through a query builder, rich text stored as validated data rather than HTML, uploaded files handled in an isolated worker, encrypted secrets at rest, and no outbound network traffic beyond the optional AI assistant and your own e-mail server.
To report a vulnerability, please follow SECURITY.md and report it privately rather than opening a public issue.
Requirements: Node.js 24 LTS, pnpm (version pinned in package.json), and
Docker for the database and end-to-end tests.
pnpm install
pnpm lint && pnpm typecheck && pnpm test # lint, types, unit tests
pnpm test:db # database tests (real PostgreSQL, Docker)
pnpm test:e2e # Playwright in the official container (Docker)
Build from source instead of using the published images:
git clone https://github.com/Chaoscent/coursecraft.git && cd coursecraft
cp .env.example .env
docker compose -f docker-compose.yml -f docker-compose.build.yml up -d --build
See ARCHITECTURE.md for the design, CLAUDE.md
for conventions, docs/course-format.md for the course
format, and the docs/ folder for the rest.
Apache License 2.0. See LICENSE, NOTICE and THIRD_PARTY_NOTICES.md.