diff --git a/.gitignore b/.gitignore index 26bf1f5..c94b87b 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ workspace/ **/public/build **/playwright-report data.db +test.db /playground **/tsconfig.tsbuildinfo **/*.tsbuildinfo diff --git a/exercises/01.basics/01.problem.install-and-configure/package.json b/exercises/01.basics/01.problem.install-and-configure/package.json deleted file mode 100644 index d2c7f32..0000000 --- a/exercises/01.basics/01.problem.install-and-configure/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "name": "exercises_01.basics_01.problem.install-and-configure" -} diff --git a/exercises/01.basics/01.solution.install-and-configure/package.json b/exercises/01.basics/01.solution.install-and-configure/package.json deleted file mode 100644 index 5fa9319..0000000 --- a/exercises/01.basics/01.solution.install-and-configure/package.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "name": "exercises_01.basics_01.solution.install-and-configure", - "scripts": { - "test:e2e": "playwright test" - }, - "devDependencies": { - "@playwright/test": "^1.53.2" - } -} diff --git a/exercises/01.basics/README.mdx b/exercises/01.basics/README.mdx deleted file mode 100644 index a5e602c..0000000 --- a/exercises/01.basics/README.mdx +++ /dev/null @@ -1 +0,0 @@ -# Basics \ No newline at end of file diff --git a/exercises/01.basics/01.problem.install-and-configure/README.mdx b/exercises/01.fundamentals/01.problem.install-and-configure/README.mdx similarity index 100% rename from exercises/01.basics/01.problem.install-and-configure/README.mdx rename to exercises/01.fundamentals/01.problem.install-and-configure/README.mdx diff --git a/exercises/01.fundamentals/01.problem.install-and-configure/package.json b/exercises/01.fundamentals/01.problem.install-and-configure/package.json new file mode 100644 index 0000000..a00a70d --- /dev/null +++ b/exercises/01.fundamentals/01.problem.install-and-configure/package.json @@ -0,0 +1,3 @@ +{ + "name": "exercises_01.fundamentals_01.problem.install-and-configure" +} diff --git a/exercises/01.basics/01.problem.install-and-configure/tsconfig.json b/exercises/01.fundamentals/01.problem.install-and-configure/tsconfig.json similarity index 100% rename from exercises/01.basics/01.problem.install-and-configure/tsconfig.json rename to exercises/01.fundamentals/01.problem.install-and-configure/tsconfig.json diff --git a/exercises/03.guides/01.solution.recording-interactions/README.mdx b/exercises/01.fundamentals/01.solution.install-and-configure/README.mdx similarity index 56% rename from exercises/03.guides/01.solution.recording-interactions/README.mdx rename to exercises/01.fundamentals/01.solution.install-and-configure/README.mdx index 5a6da63..ec449c1 100644 --- a/exercises/03.guides/01.solution.recording-interactions/README.mdx +++ b/exercises/01.fundamentals/01.solution.install-and-configure/README.mdx @@ -1,4 +1,6 @@ -# Recording interactions +# Install & configure + +- Mention the explicit `workers` value in `playwright.config.ts`. Good job! 👏 diff --git a/exercises/01.fundamentals/01.solution.install-and-configure/package.json b/exercises/01.fundamentals/01.solution.install-and-configure/package.json new file mode 100644 index 0000000..4a374e4 --- /dev/null +++ b/exercises/01.fundamentals/01.solution.install-and-configure/package.json @@ -0,0 +1,9 @@ +{ + "name": "exercises_01.fundamentals_01.solution.install-and-configure", + "scripts": { + "test:e2e": "playwright test" + }, + "devDependencies": { + "@playwright/test": "^1.57.0" + } +} diff --git a/exercises/01.basics/01.solution.install-and-configure/playwright.config.ts b/exercises/01.fundamentals/01.solution.install-and-configure/playwright.config.ts similarity index 85% rename from exercises/01.basics/01.solution.install-and-configure/playwright.config.ts rename to exercises/01.fundamentals/01.solution.install-and-configure/playwright.config.ts index 0399057..7f796f7 100644 --- a/exercises/01.basics/01.solution.install-and-configure/playwright.config.ts +++ b/exercises/01.fundamentals/01.solution.install-and-configure/playwright.config.ts @@ -11,4 +11,5 @@ export default defineConfig({ ], fullyParallel: true, forbidOnly: !!process.env.CI, + workers: process.env.CI ? 1 : undefined, }) diff --git a/exercises/01.basics/01.solution.install-and-configure/tests/epicweb.test.ts b/exercises/01.fundamentals/01.solution.install-and-configure/tests/epicweb.test.ts similarity index 100% rename from exercises/01.basics/01.solution.install-and-configure/tests/epicweb.test.ts rename to exercises/01.fundamentals/01.solution.install-and-configure/tests/epicweb.test.ts diff --git a/exercises/01.basics/01.solution.install-and-configure/tsconfig.json b/exercises/01.fundamentals/01.solution.install-and-configure/tsconfig.json similarity index 100% rename from exercises/01.basics/01.solution.install-and-configure/tsconfig.json rename to exercises/01.fundamentals/01.solution.install-and-configure/tsconfig.json diff --git a/exercises/01.basics/02.problem.running-the-app/.env b/exercises/01.fundamentals/02.problem.running-the-app/.env similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.env rename to exercises/01.fundamentals/02.problem.running-the-app/.env diff --git a/exercises/01.basics/02.problem.running-the-app/.env.example b/exercises/01.fundamentals/02.problem.running-the-app/.env.example similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.env.example rename to exercises/01.fundamentals/02.problem.running-the-app/.env.example diff --git a/exercises/01.basics/02.problem.running-the-app/.github/PULL_REQUEST_TEMPLATE.md b/exercises/01.fundamentals/02.problem.running-the-app/.github/PULL_REQUEST_TEMPLATE.md similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.github/PULL_REQUEST_TEMPLATE.md rename to exercises/01.fundamentals/02.problem.running-the-app/.github/PULL_REQUEST_TEMPLATE.md diff --git a/exercises/01.basics/02.problem.running-the-app/.github/workflows/deploy.yml b/exercises/01.fundamentals/02.problem.running-the-app/.github/workflows/deploy.yml similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.github/workflows/deploy.yml rename to exercises/01.fundamentals/02.problem.running-the-app/.github/workflows/deploy.yml diff --git a/exercises/01.basics/02.problem.running-the-app/.gitignore b/exercises/01.fundamentals/02.problem.running-the-app/.gitignore similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.gitignore rename to exercises/01.fundamentals/02.problem.running-the-app/.gitignore diff --git a/exercises/01.basics/02.problem.running-the-app/.npmrc b/exercises/01.fundamentals/02.problem.running-the-app/.npmrc similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.npmrc rename to exercises/01.fundamentals/02.problem.running-the-app/.npmrc diff --git a/exercises/01.basics/02.problem.running-the-app/.prettierignore b/exercises/01.fundamentals/02.problem.running-the-app/.prettierignore similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.prettierignore rename to exercises/01.fundamentals/02.problem.running-the-app/.prettierignore diff --git a/exercises/01.basics/02.problem.running-the-app/.vscode/extensions.json b/exercises/01.fundamentals/02.problem.running-the-app/.vscode/extensions.json similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.vscode/extensions.json rename to exercises/01.fundamentals/02.problem.running-the-app/.vscode/extensions.json diff --git a/exercises/01.basics/02.problem.running-the-app/.vscode/remix.code-snippets b/exercises/01.fundamentals/02.problem.running-the-app/.vscode/remix.code-snippets similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.vscode/remix.code-snippets rename to exercises/01.fundamentals/02.problem.running-the-app/.vscode/remix.code-snippets diff --git a/exercises/01.basics/02.problem.running-the-app/.vscode/settings.json b/exercises/01.fundamentals/02.problem.running-the-app/.vscode/settings.json similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/.vscode/settings.json rename to exercises/01.fundamentals/02.problem.running-the-app/.vscode/settings.json diff --git a/exercises/01.basics/02.problem.running-the-app/README.mdx b/exercises/01.fundamentals/02.problem.running-the-app/README.mdx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/README.mdx rename to exercises/01.fundamentals/02.problem.running-the-app/README.mdx diff --git a/exercises/01.basics/02.problem.running-the-app/app/assets/favicons/apple-touch-icon.png b/exercises/01.fundamentals/02.problem.running-the-app/app/assets/favicons/apple-touch-icon.png similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/assets/favicons/apple-touch-icon.png rename to exercises/01.fundamentals/02.problem.running-the-app/app/assets/favicons/apple-touch-icon.png diff --git a/exercises/01.basics/02.problem.running-the-app/app/assets/favicons/favicon.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/assets/favicons/favicon.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/assets/favicons/favicon.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/assets/favicons/favicon.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/error-boundary.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/error-boundary.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/error-boundary.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/error-boundary.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/floating-toolbar.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/floating-toolbar.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/floating-toolbar.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/floating-toolbar.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/forms.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/forms.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/forms.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/forms.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/progress-bar.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/progress-bar.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/progress-bar.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/progress-bar.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/search-bar.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/search-bar.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/search-bar.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/search-bar.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/spacer.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/spacer.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/spacer.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/spacer.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/toaster.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/toaster.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/toaster.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/toaster.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/README.md b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/README.md similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/README.md rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/README.md diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/button.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/button.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/button.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/button.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/checkbox.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/checkbox.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/checkbox.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/checkbox.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/dropdown-menu.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/dropdown-menu.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/dropdown-menu.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/dropdown-menu.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/icon.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/icon.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/icon.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/icon.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/input-otp.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/input-otp.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/input-otp.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/input-otp.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/input.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/input.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/input.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/input.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/label.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/label.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/label.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/label.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/sonner.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/sonner.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/sonner.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/sonner.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/status-button.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/status-button.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/status-button.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/status-button.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/textarea.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/textarea.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/textarea.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/textarea.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/ui/tooltip.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/tooltip.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/ui/tooltip.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/ui/tooltip.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/components/user-dropdown.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/components/user-dropdown.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/components/user-dropdown.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/components/user-dropdown.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/entry.client.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/entry.client.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/entry.client.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/entry.client.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/entry.server.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/entry.server.tsx similarity index 99% rename from exercises/01.basics/02.problem.running-the-app/app/entry.server.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/entry.server.tsx index 99fdd4b..8d8b1de 100644 --- a/exercises/01.basics/02.problem.running-the-app/app/entry.server.tsx +++ b/exercises/01.fundamentals/02.problem.running-the-app/app/entry.server.tsx @@ -88,6 +88,7 @@ export default async function handleRequest(...args: DocRequestArgs) { }, }, }, + xFrameOptions: false, }) resolve( diff --git a/exercises/01.basics/02.problem.running-the-app/app/root.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/root.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/root.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/root.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/$.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/$.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/$.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/$.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.test.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.test.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.test.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.test.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth.$provider.callback.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth_.$provider.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth_.$provider.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/auth_.$provider.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/auth_.$provider.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/forgot-password.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/forgot-password.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/forgot-password.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/forgot-password.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/login.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/login.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/login.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/login.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/login.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/login.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/login.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/login.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/logout.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/logout.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/logout.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/logout.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/onboarding_.$provider.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/reset-password.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/reset-password.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/reset-password.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/reset-password.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/reset-password.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/reset-password.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/reset-password.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/reset-password.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/signup.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/signup.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/signup.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/signup.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/verify.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/verify.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/verify.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/verify.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/verify.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/verify.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/verify.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/verify.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/authentication.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/authentication.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/authentication.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/authentication.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/registration.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/registration.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/registration.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/registration.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/utils.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/utils.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_auth+/webauthn+/utils.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_auth+/webauthn+/utils.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/about.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/about.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/about.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/about.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/index.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/index.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/index.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/index.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/docker.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/docker.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/docker.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/docker.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/eslint.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/eslint.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/eslint.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/eslint.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/faker.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/faker.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/faker.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/faker.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/fly.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/fly.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/fly.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/fly.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/github.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/github.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/github.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/github.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/logos.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/logos.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/logos.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/logos.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/msw.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/msw.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/msw.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/msw.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/playwright.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/playwright.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/playwright.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/playwright.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/prettier.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/prettier.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/prettier.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/prettier.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/prisma.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/prisma.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/prisma.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/prisma.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/radix.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/radix.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/radix.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/radix.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/react-email.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/react-email.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/react-email.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/react-email.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/remix.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/remix.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/remix.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/remix.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/resend.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/resend.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/resend.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/resend.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/sentry.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/sentry.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/sentry.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/sentry.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/shadcn-ui.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/shadcn-ui.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/shadcn-ui.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/shadcn-ui.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/sqlite.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/sqlite.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/sqlite.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/sqlite.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/stars.jpg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/stars.jpg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/stars.jpg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/stars.jpg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/tailwind.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/tailwind.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/tailwind.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/tailwind.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/testing-library.png b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/testing-library.png similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/testing-library.png rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/testing-library.png diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/typescript.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/typescript.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/typescript.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/typescript.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/vitest.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/vitest.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/vitest.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/vitest.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/zod.svg b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/zod.svg similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/logos/zod.svg rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/logos/zod.svg diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/privacy.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/privacy.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/privacy.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/privacy.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/support.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/support.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/support.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/support.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/tos.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/tos.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_marketing+/tos.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_marketing+/tos.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_seo+/robots[.]txt.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_seo+/robots[.]txt.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_seo+/robots[.]txt.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_seo+/robots[.]txt.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/_seo+/sitemap[.]xml.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/_seo+/sitemap[.]xml.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/_seo+/sitemap[.]xml.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/_seo+/sitemap[.]xml.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.lru.$cacheKey.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.lru.$cacheKey.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.lru.$cacheKey.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.lru.$cacheKey.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.$cacheKey.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.$cacheKey.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.$cacheKey.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.$cacheKey.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.server.ts b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.server.ts similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.server.ts rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.server.ts diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/admin+/cache_.sqlite.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/me.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/me.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/me.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/me.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/resources+/download-user-data.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/download-user-data.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/resources+/download-user-data.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/download-user-data.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/resources+/healthcheck.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/healthcheck.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/resources+/healthcheck.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/healthcheck.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/resources+/images.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/images.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/resources+/images.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/images.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/resources+/theme-switch.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/theme-switch.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/resources+/theme-switch.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/resources+/theme-switch.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.change-email.server.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.change-email.server.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.change-email.server.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.change-email.server.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.change-email.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.change-email.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.change-email.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.change-email.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.connections.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.connections.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.connections.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.connections.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.index.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.index.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.index.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.index.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.passkeys.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.passkeys.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.passkeys.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.passkeys.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.password.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.password.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.password.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.password.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.password_.create.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.password_.create.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.password_.create.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.password_.create.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.photo.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.photo.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.photo.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.photo.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.disable.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.disable.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.disable.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.disable.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.index.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.index.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.index.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.index.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.verify.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.verify.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/settings+/profile.two-factor.verify.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/settings+/profile.two-factor.verify.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username.test.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username.test.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username.test.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username.test.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.server.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.server.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.server.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.server.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/__note-editor.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId_.edit.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId_.edit.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId_.edit.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.$noteId_.edit.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.index.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.index.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.index.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.index.tsx diff --git a/exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.new.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.new.tsx similarity index 100% rename from exercises/01.basics/02.problem.running-the-app/app/routes/users+/$username_+/notes.new.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.new.tsx diff --git a/exercises/02.test-setup/01.problem.custom-fixtures/app/routes/users+/$username_+/notes.tsx b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.tsx similarity index 96% rename from exercises/02.test-setup/01.problem.custom-fixtures/app/routes/users+/$username_+/notes.tsx rename to exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.tsx index 90e7b3c..ded41ca 100644 --- a/exercises/02.test-setup/01.problem.custom-fixtures/app/routes/users+/$username_+/notes.tsx +++ b/exercises/01.fundamentals/02.problem.running-the-app/app/routes/users+/$username_+/notes.tsx @@ -51,7 +51,10 @@ export default function NotesRoute({ loaderData }: Route.ComponentProps) { {ownerDisplayName}'s Notes -