TutorLoom
기업·대학·교육기관을 위한 학습 플랫폼, 무료 오픈소스이며 엔터프라이즈 버전 제공
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Қызығушылықтан — білімге. Ағылшын тілі сабағына арналған екі тілді (қазақша / English) білім беру платформасы.
Мұғалім тіркеледі → сынып ашады → оқушыларды қосады → QR-код жасалады → оқушылар кіріп, сауалнама мен бастапқы тапсырманы орындайды → мұғалім талдауды көреді → тақырып пен оқу мақсатын енгізеді → ЖИ (немесе «Демо» үлгі) бейімделген сабақ дайындайды → мұғалім өңдеп, бекітеді, жариялайды → оқушылар телефонмен немесе қағазда орындайды → бағалау, кері байланыс, PDF және қорытынды видео.
| Бөлік | Таңдау | Себебі |
|---|---|---|
| Фреймворк | Next.js 15 (App Router) + TypeScript | Бір жобада бет те, сервер API да бар; Vercel-ге бір батырмамен шығады. |
| Дерекқор және кіру | Supabase (Postgres + Auth + Storage) | Тұрақты дерекқор, email растауы бар тіркелу, Row Level Security. |
| Стиль | Tailwind CSS 4 | Жылдам, телефонға бейімдеу оңай. |
| Қаріп | Noto Serif / Noto Sans | Қазақ әріптерінің бәрін (Ә Ғ Қ Ң Ө Ұ Ү Һ І) толық қолдайды. |
| Белгішелер | lucide-react | Бір стильдегі SVG белгішелер. |
| QR | qrcode | QR браузерде жасалады, ішінде тек сынып сілтемесі бар. |
| Тексеру | zod | ЖИ жауабының құрылымы, уақыт пен балл тексеріледі. |
Басты бет / Ғылыми негіз / ADDIE / Сабақ үлгісі (демо) ← ашық беттер, демо деректер дерекқорға жазылмайды
/auth/register, /auth/login, /auth/forgot, /auth/reset ← мұғалім (Supabase Auth, email растау міндетті)
/teacher ← Менің сыныптарым
/teacher/c/<сынып>/students | analysis | create | lessons | grading | results | addie | exports
/teacher/settings
/print/... ← A4 баспа беттері (PDF ретінде сақтауға болады)
/join → /join/<СЫНЫП_КОДЫ> → аты → жеке код ← оқушы (email керек емес)
/student, /student/survey, /student/baseline, /student/lesson/<id>, /student/summary/<id>
Дерекқор кестелері: teachers, classes, students, survey_responses (әр жіберу жаңа нұсқа), baseline_attempts, observations, lessons, lesson_versions, ai_requests, assignments (жариялау кезіндегі оқушы нұсқасының көшірмесі), responses, reflections, login_attempts. Схема: supabase/migrations/.
Бірден жұмыс істейді (Supabase және Vercel айнымалылары қойылса):
Сыртқы баптауды қажет етеді:
AI_PROVIDER, AI_MODEL, AI_API_KEY. Әр сұраныс провайдердің ақылы шығыны болуы мүмкін..env.example файлын қараңыз. Құпия кілттер ешқашан GitHub-қа салынбайды, браузерге берілмейді.
| Айнымалы | Қайдан алу |
|---|---|
NEXT_PUBLIC_SUPABASE_URL | Supabase → Project Settings → API → Project URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Supabase → Project Settings → API Keys → Publishable key |
SUPABASE_SERVICE_ROLE_KEY | Supabase → Project Settings → API Keys → Secret key (sb_secret_…) немесе Legacy service_role кілті. Тек серверде! |
NEXT_PUBLIC_SITE_URL | Vercel берген сайт мекенжайы, мысалы https://eduspark.vercel.app |
STUDENT_SESSION_SECRET | Кез келген 32+ таңбалы кездейсоқ жол (openssl rand -hex 32) |
AI_PROVIDER, AI_MODEL, AI_API_KEY, AI_BASE_URL, AI_TIMEOUT_SECONDS | Міндетті емес. anthropic немесе openai (OpenAI-үйлесімді API үшін AI_BASE_URL). |
Бұл репозиторийге арналған Supabase жобасы (
eduspark) ашылып, барлық миграция қолданылған. Жаңа жоба ашсаңыз ғана 1-қадамды орындаңыз.
supabase/migrations/ ішіндегі файлдарды ретімен (0001, 0002, 0003, 0004) іске қосыңыз.https://<сіздің-сайтыңыз>.vercel.apphttps://<сіздің-сайтыңыз>.vercel.app/auth/callbackvoice бумасы миграциямен жасалады (жабық, тек сервер арқылы).eduspark репозиторийін таңдаңыз.NEXT_PUBLIC_SITE_URL мәніне қойып, Supabase-тегі Site URL / Redirect URLs-ке жазыңыз, содан кейін Redeploy жасаңыз.npm install
cp .env.example .env.local # мәндерді толтырыңыз
npm run dev # http://localhost:3000
npm test # логика тесттері
npm run typecheck
unique (assignment_id, task_id).public/images/README.md — суреттердің атаулары, мөлдірлігін тексеру нәтижесі және жасалған өңдеу.
EduSpark is a bilingual (Kazakh/English) web platform for English lessons. Stack: Next.js 15 + TypeScript, Supabase (Postgres, Auth with email confirmation, Storage), Tailwind 4. Teachers sign up with full name, a confirmed email and a password typed twice; they create classes, add students, print QR codes; students join without email using the class code and a personal code. Lessons are generated by a configurable server-side AI provider (or a clearly labelled demo template), validated (stage minutes = duration, equal points across interest variants, descriptor sums), approved and published. Students work on phones with autosave and offline retry; teachers grade, release feedback, export A4/PDF materials and produce a rule-based summary video recorded in the browser (MP4 or WebM, whichever the browser really supports). See sections 4–6 for environment variables, Supabase setup and Vercel deployment.