15```
16โโโ backend/
17โ โโโ database/
18โ โ โโโ migrations.ts # Schema definitions
19โ โ โโโ queries.ts # DB query functions
54- **Code Editor**: Monaco Editor
55- **Backend**: Hono (TypeScript)
56- **Database**: SQLite
57- **C Compilation**: WebAssembly-based C compiler
6
7- `index.ts` - Main entry point for the HTTP trigger
8- `database/` - Database migrations and queries
9- `routes/` - API route handlers
10- `services/` - Business logic services
31- `GET /api/users/:username/progress` - Get learning path with user progress
32
33## Database Schema
34
35The platform uses SQLite for data storage with the following tables:
2import { readFile, serveFile } from "https://esm.town/v/std/utils@85-main/index.ts";
3import { parseProject } from "https://esm.town/v/std/utils@85-main/index.ts";
4import { runMigrations } from "./database/migrations.ts";
5import { apiRoutes } from "./routes/api.ts";
6
34app.use("*", customCors());
35
36// Run database migrations on startup
37await runMigrations();
38
1import { Exercise } from "../database/queries.ts";
2import { compileAndRunCode } from "./compiler.ts";
3
11 getUserProgress,
12 getLearningPathWithProgress
13} from "../database/queries.ts";
14import { compileAndRunCode } from "../services/compiler.ts";
15import { validateExerciseSolution } from "../services/exercises.ts";
2import { readFile, serveFile } from "https://esm.town/v/std/utils@85-main/index.ts";
3import { parseProject } from "https://esm.town/v/std/utils@85-main/index.ts";
4import { runMigrations } from "./database/migrations.ts";
5import { apiRoutes } from "./routes/api.ts";
6
34app.use("*", customCors());
35
36// Run database migrations on startup
37await runMigrations();
38
15```
16โโโ backend/
17โ โโโ database/
18โ โ โโโ migrations.ts # Schema definitions
19โ โ โโโ queries.ts # DB query functions
54- **Code Editor**: Monaco Editor
55- **Backend**: Hono (TypeScript)
56- **Database**: SQLite
57- **C Compilation**: WebAssembly-based C compiler
6
7- `index.ts` - Main entry point for the HTTP trigger
8- `database/` - Database migrations and queries
9- `routes/` - API route handlers
10- `services/` - Business logic services
31- `GET /api/users/:username/progress` - Get learning path with user progress
32
33## Database Schema
34
35The platform uses SQLite for data storage with the following tables:
1import { Exercise } from "../database/queries.ts";
2import { compileAndRunCode } from "./compiler.ts";
3
11 getUserProgress,
12 getLearningPathWithProgress
13} from "../database/queries.ts";
14import { compileAndRunCode } from "../services/compiler.ts";
15import { validateExerciseSolution } from "../services/exercises.ts";