add language learner project
Some checks failed
Test and deploy staging / staging (push) Has been cancelled
Some checks failed
Test and deploy staging / staging (push) Has been cancelled
Dutch and Korean (explained in English) and English (explained in Dutch) from A1 to C1, with a Hangul level for Korean. Lessons with notes, words and sentences generate multiple-choice, typing, sentence building, cloze, listening and matching exercises. Endless challenges: a seeded daily challenge, sprint, survival, mixed practice, level tests, spaced-repetition reviews and generated drills (numbers, clock times, de/het, plurals, Dutch and Korean conjugation, particles, Hangul reading, irregular verbs). Progress is stored in localStorage with export/import. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
10
src/routes/projects/language-learner/[lang]/+layout.ts
Normal file
10
src/routes/projects/language-learner/[lang]/+layout.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
import { error } from '@sveltejs/kit';
|
||||
import { isLang, loadCourse } from '$lib/language-learner/courses';
|
||||
import { loadDrills } from '$lib/language-learner/drills';
|
||||
import type { LayoutLoad } from './$types';
|
||||
|
||||
export const load: LayoutLoad = async ({ params }) => {
|
||||
if (!isLang(params.lang)) error(404, 'Unknown language');
|
||||
const [course, drills] = await Promise.all([loadCourse(params.lang), loadDrills(params.lang)]);
|
||||
return { course, drills };
|
||||
};
|
||||
Reference in New Issue
Block a user