> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tuturuuu.com/llms.txt
> Use this file to discover all available pages before exploring further.

# learn: routes

> Source entry points and route ownership for the learn workspace.

Runtime: **Next.js App Router**. Source: [apps/learn](https://github.com/tutur3u/platform/blob/main/apps/learn). Package: `@tuturuuu/learn`.

This inventory lists concrete Next page and handler files, including generated wrappers. Methods are lexical source evidence; consult the implementation for re-exports, authorization, status codes, payloads, and fallbacks. Filesystem presence does not establish public access, deployment, entitlement, or a supported external API contract. Route groups are omitted from URLs; dynamic parameters are shown in brackets.

| URL pattern | Page or HTTP methods | Source |
| - | - | - |
| `/[locale]/login` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(auth\)/login/page.tsx) |
| `/[locale]/verify-token` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(auth\)/verify-token/page.tsx) |
| `/[locale]/[wsId]/ai-chat` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/ai-chat/page.tsx) |
| `/[locale]/[wsId]/assignments` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/assignments/page.tsx) |
| `/[locale]/[wsId]/coding` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/coding/page.tsx) |
| `/[locale]/[wsId]/courses/[courseId]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/courses/%5BcourseId%5D/page.tsx) |
| `/[locale]/[wsId]/courses/[courseId]/tests/[testId]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/courses/%5BcourseId%5D/tests/%5BtestId%5D/page.tsx) |
| `/[locale]/[wsId]/courses` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/courses/page.tsx) |
| `/[locale]/[wsId]/marks` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/marks/page.tsx) |
| `/[locale]/[wsId]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/page.tsx) |
| `/[locale]/[wsId]/practice` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/practice/page.tsx) |
| `/[locale]/[wsId]/programming` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/page.tsx) |
| `/[locale]/[wsId]/programming/playgrounds/[projectId]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/playgrounds/%5BprojectId%5D/page.tsx) |
| `/[locale]/[wsId]/programming/playgrounds` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/playgrounds/page.tsx) |
| `/[locale]/[wsId]/programming/problems/[problemId]/edit` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/problems/%5BproblemId%5D/edit/page.tsx) |
| `/[locale]/[wsId]/programming/problems/[problemId]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/problems/%5BproblemId%5D/page.tsx) |
| `/[locale]/[wsId]/programming/problems/new` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/programming/problems/new/page.tsx) |
| `/[locale]/[wsId]/reports` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/reports/page.tsx) |
| `/[locale]/[wsId]/settings` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/settings/page.tsx) |
| `/[locale]/[wsId]/todo` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/\(dashboard\)/%5BwsId%5D/todo/page.tsx) |
| `/[locale]/dashboard` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/dashboard/page.tsx) |
| `/[locale]` | Page | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/%5Blocale%5D/page.tsx) |
| `/api/auth/logout` | GET, POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/auth/logout/route.ts) |
| `/api/auth/refresh-app-session` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/auth/refresh-app-session/route.ts) |
| `/api/auth/verify-app-token` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/auth/verify-app-token/route.ts) |
| `/api/build-info` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/build-info/route.ts) |
| `/api/v1/course` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/course/route.ts) |
| `/api/v1/tulearn/bootstrap` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/tulearn/bootstrap/route.ts) |
| `/api/v1/vocabulary/pronunciation` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/vocabulary/pronunciation/route.ts) |
| `/api/v1/vocabulary/speech` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/vocabulary/speech/route.ts) |
| `/api/v1/workspaces/[wsId]/course-modules/[moduleId]/vocabulary` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/course-modules/%5BmoduleId%5D/vocabulary/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/assignments` | GET, PATCH | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/assignments/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]/modules/[moduleId]` | DELETE, GET, POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/modules/%5BmoduleId%5D/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]/tests/[testId]/attempt` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/tests/%5BtestId%5D/attempt/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]/tests/[testId]/save-answer` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/tests/%5BtestId%5D/save-answer/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]/tests/[testId]/start` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/tests/%5BtestId%5D/start/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses/[courseId]/tests/[testId]/submit` | POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/%5BcourseId%5D/tests/%5BtestId%5D/submit/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/courses` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/courses/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/home` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/home/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/marks` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/marks/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/parent-links/[linkId]` | PATCH | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/parent-links/%5BlinkId%5D/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/parent-links` | GET, POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/parent-links/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/practice` | GET, POST | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/practice/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/reports` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/reports/route.ts) |
| `/api/v1/workspaces/[wsId]/tulearn/todo` | GET | [Implementation](https://github.com/tutur3u/platform/blob/main/apps/learn/src/app/api/v1/workspaces/%5BwsId%5D/tulearn/todo/route.ts) |

[All apps and services](/reference/repository/catalog). [Versions](/reference/repository/versions).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.