From 1ed330ccf890af003bfaa7dc716b8f26090ad5f9 Mon Sep 17 00:00:00 2001 From: Francesco Menghi <53121061+menghif@users.noreply.github.com> Date: Tue, 22 Mar 2022 14:09:58 -0400 Subject: [PATCH] Move frontend from `src/web` to `src/web/app` --- .github/workflows/docker-build-and-push.yml | 2 +- .prettierignore | 4 ++-- README.md | 2 +- docker/development.yml | 2 +- jest.config.js | 2 +- package.json | 2 +- pnpm-lock.yaml | 11 ++++++----- pnpm-workspace.yaml | 2 +- src/docs/docs/architecture.md | 6 +++--- src/docs/docs/tools-and-technologies/nextjs.md | 2 +- src/web/{ => app}/.dockerignore | 0 src/web/{ => app}/.eslintrc.js | 0 src/web/{ => app}/.gitignore | 0 src/web/{ => app}/Dockerfile | 0 src/web/{ => app}/README.md | 0 src/web/{ => app}/jest.config.js | 10 +++++----- src/web/{ => app}/next-env.d.ts | 0 src/web/{ => app}/next.config.js | 4 ++-- src/web/{ => app}/package.json | 0 .../{ => app}/public/googlee1d86717a49db532.html | 0 src/web/{ => app}/public/logo-badged.svg | 0 src/web/{ => app}/public/logo.svg | 0 .../{ => app}/public/logoImages/apple-icon-180.png | Bin .../public/logoImages/apple-splash-1125-2436.jpg | Bin .../public/logoImages/apple-splash-1136-640.jpg | Bin .../public/logoImages/apple-splash-1170-2532.jpg | Bin .../public/logoImages/apple-splash-1242-2208.jpg | Bin .../public/logoImages/apple-splash-1242-2688.jpg | Bin .../public/logoImages/apple-splash-1284-2778.jpg | Bin .../public/logoImages/apple-splash-1334-750.jpg | Bin .../public/logoImages/apple-splash-1536-2048.jpg | Bin .../public/logoImages/apple-splash-1620-2160.jpg | Bin .../public/logoImages/apple-splash-1668-2224.jpg | Bin .../public/logoImages/apple-splash-1668-2388.jpg | Bin .../public/logoImages/apple-splash-1792-828.jpg | Bin .../public/logoImages/apple-splash-2048-1536.jpg | Bin .../public/logoImages/apple-splash-2048-2732.jpg | Bin .../public/logoImages/apple-splash-2160-1620.jpg | Bin .../public/logoImages/apple-splash-2208-1242.jpg | Bin .../public/logoImages/apple-splash-2224-1668.jpg | Bin .../public/logoImages/apple-splash-2388-1668.jpg | Bin .../public/logoImages/apple-splash-2436-1125.jpg | Bin .../public/logoImages/apple-splash-2532-1170.jpg | Bin .../public/logoImages/apple-splash-2688-1242.jpg | Bin .../public/logoImages/apple-splash-2732-2048.jpg | Bin .../public/logoImages/apple-splash-2778-1284.jpg | Bin .../public/logoImages/apple-splash-640-1136.jpg | Bin .../public/logoImages/apple-splash-750-1334.jpg | Bin .../public/logoImages/apple-splash-828-1792.jpg | Bin .../public/logoImages/manifest-icon-192.png | Bin .../public/logoImages/manifest-icon-512.png | Bin src/web/{ => app}/public/manifest.json | 0 src/web/{ => app}/public/noResults.svg | 0 src/web/{ => app}/public/robots.txt | 0 src/web/{ => app}/public/styles/github-dark.min.css | 0 src/web/{ => app}/public/styles/github.min.css | 0 src/web/{ => app}/public/vercel.svg | 0 src/web/{ => app}/src/User.ts | 0 .../{ => app}/src/components/AboutFooter.test.tsx | 0 src/web/{ => app}/src/components/AboutFooter.tsx | 0 src/web/{ => app}/src/components/AboutPage.tsx | 0 src/web/{ => app}/src/components/AdminButtons.tsx | 0 src/web/{ => app}/src/components/AuthProvider.tsx | 0 src/web/{ => app}/src/components/Banner.tsx | 0 src/web/{ => app}/src/components/BannerButtons.tsx | 0 .../{ => app}/src/components/BannerDynamicItems.tsx | 0 src/web/{ => app}/src/components/DynamicImage.tsx | 0 .../src/components/GenericInfoProvider.tsx | 0 .../src/components/GitHubContributorCard.tsx | 0 src/web/{ => app}/src/components/GitHubInfo.tsx | 0 .../{ => app}/src/components/LanguageSelector.tsx | 0 src/web/{ => app}/src/components/Login/LoggedIn.tsx | 0 .../{ => app}/src/components/Login/LoggedOut.tsx | 0 src/web/{ => app}/src/components/Login/index.tsx | 0 src/web/{ => app}/src/components/Logo.test.tsx | 0 src/web/{ => app}/src/components/Logo.tsx | 0 .../src/components/NavBar/NavBarButton.tsx | 0 src/web/{ => app}/src/components/NavBar/index.tsx | 0 src/web/{ => app}/src/components/PopUp.tsx | 0 .../{ => app}/src/components/Posts/ExpandIcon.tsx | 0 .../src/components/Posts/GitHubInfo/Commits.tsx | 0 .../Posts/GitHubInfo/GitHubInfoMobile.tsx | 0 .../src/components/Posts/GitHubInfo/Issues.tsx | 0 .../components/Posts/GitHubInfo/PullRequests.tsx | 0 .../src/components/Posts/GitHubInfo/Repos.tsx | 0 .../src/components/Posts/GitHubInfo/Users.tsx | 0 .../src/components/Posts/GitHubInfo/index.tsx | 0 .../src/components/Posts/LoadAutoScroll.tsx | 0 src/web/{ => app}/src/components/Posts/Post.tsx | 0 .../{ => app}/src/components/Posts/PostAvatar.tsx | 0 src/web/{ => app}/src/components/Posts/PostInfo.tsx | 0 .../{ => app}/src/components/Posts/ShareButton.tsx | 0 src/web/{ => app}/src/components/Posts/Timeline.tsx | 0 src/web/{ => app}/src/components/Posts/index.tsx | 0 src/web/{ => app}/src/components/SEO.tsx | 0 src/web/{ => app}/src/components/ScrollAction.tsx | 0 src/web/{ => app}/src/components/SearchBar.tsx | 0 src/web/{ => app}/src/components/SearchHelp.tsx | 0 .../components/SearchInput/AuthorSearchInput.tsx | 0 .../src/components/SearchInput/PostSearchInput.tsx | 0 .../src/components/SearchInput/SearchInput.tsx | 0 src/web/{ => app}/src/components/SearchPage.tsx | 0 src/web/{ => app}/src/components/SearchProvider.tsx | 0 src/web/{ => app}/src/components/SearchResults.tsx | 0 .../components/SignUp/FormFields/CheckBoxInput.tsx | 0 .../src/components/SignUp/FormFields/TextInput.tsx | 0 .../src/components/SignUp/FormFields/index.tsx | 0 .../src/components/SignUp/Forms/BasicInfo.tsx | 0 .../src/components/SignUp/Forms/GitHubAccount.tsx | 0 .../src/components/SignUp/Forms/Overview.tsx | 0 .../src/components/SignUp/Forms/RSSFeeds.tsx | 0 .../src/components/SignUp/Forms/Review.tsx | 0 .../{ => app}/src/components/SignUp/Forms/index.tsx | 0 .../src/components/SignUp/Schema/FormModel.tsx | 0 .../src/components/SignUp/Schema/FormSchema.tsx | 0 src/web/{ => app}/src/components/Spinner.tsx | 0 .../{ => app}/src/components/TelescopeAvatar.tsx | 0 src/web/{ => app}/src/components/ThemeProvider.tsx | 0 .../{ => app}/src/components/ThemeToggleButton.tsx | 0 .../__snapshots__/AboutFooter.test.tsx.snap | 0 .../src/components/__snapshots__/Logo.test.tsx.snap | 0 src/web/{ => app}/src/config.ts | 0 src/web/{ => app}/src/githubReservedName.ts | 0 src/web/{ => app}/src/hooks/use-auth.ts | 0 src/web/{ => app}/src/hooks/use-favicon-badge.ts | 0 src/web/{ => app}/src/hooks/use-genericInfo.ts | 0 src/web/{ => app}/src/hooks/use-preferred-theme.ts | 0 src/web/{ => app}/src/hooks/use-search-value.ts | 0 .../src/hooks/use-telescope-contributor.ts | 0 src/web/{ => app}/src/hooks/use-visibility.ts | 0 src/web/{ => app}/src/interfaces/index.ts | 0 src/web/{ => app}/src/pages/_app.tsx | 0 src/web/{ => app}/src/pages/_document.tsx | 0 src/web/{ => app}/src/pages/about.tsx | 0 src/web/{ => app}/src/pages/error.tsx | 0 src/web/{ => app}/src/pages/index.tsx | 0 src/web/{ => app}/src/pages/search.tsx | 0 src/web/{ => app}/src/pages/signup.tsx | 0 src/web/{ => app}/src/student-quotes.js | 0 src/web/{ => app}/src/styles/Home.module.css | 0 src/web/{ => app}/src/styles/globals.css | 0 .../{ => app}/src/styles/telescope-post-content.css | 0 src/web/{ => app}/src/theme/createPalette.d.ts | 0 src/web/{ => app}/src/theme/index.ts | 0 .../{ => app}/src/translations/en/translations.js | 0 .../{ => app}/src/translations/es/translations.js | 0 src/web/{ => app}/src/translations/i18n.js | 0 src/web/{ => app}/tsconfig.jest.json | 0 src/web/{ => app}/tsconfig.json | 0 src/web/{ => app}/vercel.json | 0 150 files changed, 25 insertions(+), 24 deletions(-) rename src/web/{ => app}/.dockerignore (100%) rename src/web/{ => app}/.eslintrc.js (100%) rename src/web/{ => app}/.gitignore (100%) rename src/web/{ => app}/Dockerfile (100%) rename src/web/{ => app}/README.md (100%) rename src/web/{ => app}/jest.config.js (64%) rename src/web/{ => app}/next-env.d.ts (100%) rename src/web/{ => app}/next.config.js (94%) rename src/web/{ => app}/package.json (100%) rename src/web/{ => app}/public/googlee1d86717a49db532.html (100%) rename src/web/{ => app}/public/logo-badged.svg (100%) rename src/web/{ => app}/public/logo.svg (100%) rename src/web/{ => app}/public/logoImages/apple-icon-180.png (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1125-2436.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1136-640.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1170-2532.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1242-2208.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1242-2688.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1284-2778.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1334-750.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1536-2048.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1620-2160.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1668-2224.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1668-2388.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-1792-828.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2048-1536.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2048-2732.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2160-1620.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2208-1242.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2224-1668.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2388-1668.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2436-1125.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2532-1170.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2688-1242.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2732-2048.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-2778-1284.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-640-1136.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-750-1334.jpg (100%) rename src/web/{ => app}/public/logoImages/apple-splash-828-1792.jpg (100%) rename src/web/{ => app}/public/logoImages/manifest-icon-192.png (100%) rename src/web/{ => app}/public/logoImages/manifest-icon-512.png (100%) rename src/web/{ => app}/public/manifest.json (100%) rename src/web/{ => app}/public/noResults.svg (100%) rename src/web/{ => app}/public/robots.txt (100%) rename src/web/{ => app}/public/styles/github-dark.min.css (100%) rename src/web/{ => app}/public/styles/github.min.css (100%) rename src/web/{ => app}/public/vercel.svg (100%) rename src/web/{ => app}/src/User.ts (100%) rename src/web/{ => app}/src/components/AboutFooter.test.tsx (100%) rename src/web/{ => app}/src/components/AboutFooter.tsx (100%) rename src/web/{ => app}/src/components/AboutPage.tsx (100%) rename src/web/{ => app}/src/components/AdminButtons.tsx (100%) rename src/web/{ => app}/src/components/AuthProvider.tsx (100%) rename src/web/{ => app}/src/components/Banner.tsx (100%) rename src/web/{ => app}/src/components/BannerButtons.tsx (100%) rename src/web/{ => app}/src/components/BannerDynamicItems.tsx (100%) rename src/web/{ => app}/src/components/DynamicImage.tsx (100%) rename src/web/{ => app}/src/components/GenericInfoProvider.tsx (100%) rename src/web/{ => app}/src/components/GitHubContributorCard.tsx (100%) rename src/web/{ => app}/src/components/GitHubInfo.tsx (100%) rename src/web/{ => app}/src/components/LanguageSelector.tsx (100%) rename src/web/{ => app}/src/components/Login/LoggedIn.tsx (100%) rename src/web/{ => app}/src/components/Login/LoggedOut.tsx (100%) rename src/web/{ => app}/src/components/Login/index.tsx (100%) rename src/web/{ => app}/src/components/Logo.test.tsx (100%) rename src/web/{ => app}/src/components/Logo.tsx (100%) rename src/web/{ => app}/src/components/NavBar/NavBarButton.tsx (100%) rename src/web/{ => app}/src/components/NavBar/index.tsx (100%) rename src/web/{ => app}/src/components/PopUp.tsx (100%) rename src/web/{ => app}/src/components/Posts/ExpandIcon.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/Commits.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/GitHubInfoMobile.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/Issues.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/PullRequests.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/Repos.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/Users.tsx (100%) rename src/web/{ => app}/src/components/Posts/GitHubInfo/index.tsx (100%) rename src/web/{ => app}/src/components/Posts/LoadAutoScroll.tsx (100%) rename src/web/{ => app}/src/components/Posts/Post.tsx (100%) rename src/web/{ => app}/src/components/Posts/PostAvatar.tsx (100%) rename src/web/{ => app}/src/components/Posts/PostInfo.tsx (100%) rename src/web/{ => app}/src/components/Posts/ShareButton.tsx (100%) rename src/web/{ => app}/src/components/Posts/Timeline.tsx (100%) rename src/web/{ => app}/src/components/Posts/index.tsx (100%) rename src/web/{ => app}/src/components/SEO.tsx (100%) rename src/web/{ => app}/src/components/ScrollAction.tsx (100%) rename src/web/{ => app}/src/components/SearchBar.tsx (100%) rename src/web/{ => app}/src/components/SearchHelp.tsx (100%) rename src/web/{ => app}/src/components/SearchInput/AuthorSearchInput.tsx (100%) rename src/web/{ => app}/src/components/SearchInput/PostSearchInput.tsx (100%) rename src/web/{ => app}/src/components/SearchInput/SearchInput.tsx (100%) rename src/web/{ => app}/src/components/SearchPage.tsx (100%) rename src/web/{ => app}/src/components/SearchProvider.tsx (100%) rename src/web/{ => app}/src/components/SearchResults.tsx (100%) rename src/web/{ => app}/src/components/SignUp/FormFields/CheckBoxInput.tsx (100%) rename src/web/{ => app}/src/components/SignUp/FormFields/TextInput.tsx (100%) rename src/web/{ => app}/src/components/SignUp/FormFields/index.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/BasicInfo.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/GitHubAccount.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/Overview.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/RSSFeeds.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/Review.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Forms/index.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Schema/FormModel.tsx (100%) rename src/web/{ => app}/src/components/SignUp/Schema/FormSchema.tsx (100%) rename src/web/{ => app}/src/components/Spinner.tsx (100%) rename src/web/{ => app}/src/components/TelescopeAvatar.tsx (100%) rename src/web/{ => app}/src/components/ThemeProvider.tsx (100%) rename src/web/{ => app}/src/components/ThemeToggleButton.tsx (100%) rename src/web/{ => app}/src/components/__snapshots__/AboutFooter.test.tsx.snap (100%) rename src/web/{ => app}/src/components/__snapshots__/Logo.test.tsx.snap (100%) rename src/web/{ => app}/src/config.ts (100%) rename src/web/{ => app}/src/githubReservedName.ts (100%) rename src/web/{ => app}/src/hooks/use-auth.ts (100%) rename src/web/{ => app}/src/hooks/use-favicon-badge.ts (100%) rename src/web/{ => app}/src/hooks/use-genericInfo.ts (100%) rename src/web/{ => app}/src/hooks/use-preferred-theme.ts (100%) rename src/web/{ => app}/src/hooks/use-search-value.ts (100%) rename src/web/{ => app}/src/hooks/use-telescope-contributor.ts (100%) rename src/web/{ => app}/src/hooks/use-visibility.ts (100%) rename src/web/{ => app}/src/interfaces/index.ts (100%) rename src/web/{ => app}/src/pages/_app.tsx (100%) rename src/web/{ => app}/src/pages/_document.tsx (100%) rename src/web/{ => app}/src/pages/about.tsx (100%) rename src/web/{ => app}/src/pages/error.tsx (100%) rename src/web/{ => app}/src/pages/index.tsx (100%) rename src/web/{ => app}/src/pages/search.tsx (100%) rename src/web/{ => app}/src/pages/signup.tsx (100%) rename src/web/{ => app}/src/student-quotes.js (100%) rename src/web/{ => app}/src/styles/Home.module.css (100%) rename src/web/{ => app}/src/styles/globals.css (100%) rename src/web/{ => app}/src/styles/telescope-post-content.css (100%) rename src/web/{ => app}/src/theme/createPalette.d.ts (100%) rename src/web/{ => app}/src/theme/index.ts (100%) rename src/web/{ => app}/src/translations/en/translations.js (100%) rename src/web/{ => app}/src/translations/es/translations.js (100%) rename src/web/{ => app}/src/translations/i18n.js (100%) rename src/web/{ => app}/tsconfig.jest.json (100%) rename src/web/{ => app}/tsconfig.json (100%) rename src/web/{ => app}/vercel.json (100%) diff --git a/.github/workflows/docker-build-and-push.yml b/.github/workflows/docker-build-and-push.yml index 06a082c603..3732433747 100644 --- a/.github/workflows/docker-build-and-push.yml +++ b/.github/workflows/docker-build-and-push.yml @@ -71,7 +71,7 @@ jobs: # image: docs - context: src/api/feed-discovery image: feed-discovery - - context: src/web + - context: src/web/app image: nginx build-args: | WEB_URL=${{ inputs.web_url }} diff --git a/.prettierignore b/.prettierignore index 0192afd47a..cb128b9544 100644 --- a/.prettierignore +++ b/.prettierignore @@ -11,8 +11,8 @@ pnpm-lock.yaml # We don't maintain these files src/api/status/public/assets -src/web/public/sw* -src/web/public/workbox* +src/web/app/public/sw* +src/web/app/public/workbox* src/api/status/src/views # Ignore these directories for the docusaurus docs website diff --git a/README.md b/README.md index bde7100561..87e5f2068b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Telescope +# Telescope [![js-airbnb/prettier-style](https://img.shields.io/badge/code%20style-airbnb%2Fprettier-blue)](https://github.com/airbnb/javascript) [![renovatebot - enabled](https://img.shields.io/badge/renovatebot-enabled-2ea44f?logo=renovatebot)](https://renovatebot.com) diff --git a/docker/development.yml b/docker/development.yml index 9cb1a79cd5..5deec5b4c7 100644 --- a/docker/development.yml +++ b/docker/development.yml @@ -13,7 +13,7 @@ services: # API Gateway nginx: build: - context: ../src/web + context: ../src/web/app cache_from: - docker.cdot.systems/nginx:buildcache # next.js needs build-time access to a number of API URL values, forward as ARGs diff --git a/jest.config.js b/jest.config.js index 94a2bb7bf9..067f591911 100644 --- a/jest.config.js +++ b/jest.config.js @@ -4,7 +4,7 @@ module.exports = { ...baseConfig, projects: [ // Our front-end - '/src/web/jest.config.js', + '/src/web/app/jest.config.js', // Our legacy backend tests, slowly being migrated to microservices '/test/jest.config.js', // Satellite diff --git a/package.json b/package.json index 89b95ca418..0c2e132465 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ }, "scripts": { "build": "pnpm turbo run build", - "dev": "pnpm dev --prefix src/web --", + "dev": "pnpm dev --prefix src/web/app --", "develop": "pnpm dev", "eslint": "TIMING=1 eslint --config .eslintrc.js --ignore-path .gitignore \"./src/backend/**/*.js\" \"./test/**/*.js\"", "eslint-fix": "eslint --config .eslintrc.js --ignore-path .gitignore \"./src/backend/**/*.js\" \"./test/**/*.js\" --fix", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 18599f2584..eb22d1bd1d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -466,7 +466,7 @@ importers: nock: 13.2.4 pretty-quick: 3.1.3_prettier@2.5.1 - src/web: + src/web/app: specifiers: '@emotion/react': 11.8.2 '@emotion/styled': 11.8.1 @@ -3771,7 +3771,7 @@ packages: '@docusaurus/utils': 2.0.0-beta.17 '@docusaurus/utils-validation': 2.0.0-beta.17 algoliasearch: 4.12.1 - algoliasearch-helper: 3.7.0_algoliasearch@4.12.1 + algoliasearch-helper: 3.7.3_algoliasearch@4.12.1 clsx: 1.1.1 eta: 1.12.3 fs-extra: 10.0.1 @@ -6306,8 +6306,9 @@ packages: require-from-string: 2.0.2 uri-js: 4.4.1 - /algoliasearch-helper/3.7.0_algoliasearch@4.12.1: - resolution: {integrity: sha512-XJ3QfERBLfeVCyTVx80gon7r3/rgm/CE8Ha1H7cbablRe/X7SfYQ14g/eO+MhjVKIQp+gy9oC6G5ilmLwS1k6w==} + /algoliasearch-helper/3.7.3_algoliasearch@4.12.1: + resolution: {integrity: sha512-ra+SYf+R9bFdnBVMDYxjzdX246k4LtaeTPxww9EodnQcOSKn35TOb1/LOj1nIPZla/LjDr7wczVFqeH85O9kpg==} + deprecated: 3.7.3 peerDependencies: algoliasearch: '>= 3.1 < 5' dependencies: @@ -15161,7 +15162,7 @@ packages: resolution: {integrity: sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==} engines: {node: ^10 || ^12 || >=14} dependencies: - nanoid: 3.2.0 + nanoid: 3.3.1 picocolors: 1.0.0 source-map-js: 1.0.2 dev: false diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index d707517f47..3171191b88 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -3,7 +3,7 @@ packages: # docusaurus web app - 'src/docs' # web front-end - - 'src/web' + - 'src/web/app' # microservices - 'src/api/*' # satellite diff --git a/src/docs/docs/architecture.md b/src/docs/docs/architecture.md index eec27439f8..8a78ece4ff 100644 --- a/src/docs/docs/architecture.md +++ b/src/docs/docs/architecture.md @@ -70,11 +70,11 @@ On Windows and macOS, Docker Desktop must be running before you can call these s ### Front-end Web App -The front-end web app is written in TypeScript and uses next.js and Material UI for routing, component system, etc. The code lives in `src/web`. +The front-end web app is written in TypeScript and uses next.js and Material UI for routing, component system, etc. The code lives in `src/web/app`. -The web app accesses many of the microservices at runtime, and we depend on a build step to export and include the necessary runtime variables. In the front-end app, they are available at runtime via `src/web/src/config.ts`. These are populated via the `src/web/next.config.js` during build time. See [Environment Setup](../docs/getting-started/environment-setup.md) for details on how to populate these with different values for local, CI, staging, or production environments. See also [Front End](../docs/tools-and-technologies/nextjs.md) for more details about the front-end. +The web app accesses many of the microservices at runtime, and we depend on a build step to export and include the necessary runtime variables. In the front-end app, they are available at runtime via `src/web/app/src/config.ts`. These are populated via the `src/web/app/next.config.js` during build time. See [Environment Setup](../docs/getting-started/environment-setup.md) for details on how to populate these with different values for local, CI, staging, or production environments. See also [Front End](../docs/tools-and-technologies/nextjs.md) for more details about the front-end. -The front-end is run via its own container, and hosted statically by nginx. The container is defined in `src/web/Dockerfile`. Locally, it is available at , on staging at , and on production at . +The front-end is run via its own container, and hosted statically by nginx. The container is defined in `src/web/app/Dockerfile`. Locally, it is available at , on staging at , and on production at . ### SAML2-based authentication and authorization diff --git a/src/docs/docs/tools-and-technologies/nextjs.md b/src/docs/docs/tools-and-technologies/nextjs.md index 4834fa763e..3edc1ebc95 100644 --- a/src/docs/docs/tools-and-technologies/nextjs.md +++ b/src/docs/docs/tools-and-technologies/nextjs.md @@ -121,7 +121,7 @@ Here is the colour palette that we use to make our web site looks pretty and up- # Theming Palette -Here is how we construct our Theme with MUI ([frontend/src/web/src/theme/index.ts](https://github.com/Seneca-CDOT/telescope/blob/master/src/web/src/theme/index.ts)) +Here is how we construct our Theme with MUI ([frontend/src/web/app/src/theme/index.ts](https://github.com/Seneca-CDOT/telescope/blob/master/src/web/app/src/theme/index.ts)) ```ts export const lightTheme: Theme = createMuiTheme({ diff --git a/src/web/.dockerignore b/src/web/app/.dockerignore similarity index 100% rename from src/web/.dockerignore rename to src/web/app/.dockerignore diff --git a/src/web/.eslintrc.js b/src/web/app/.eslintrc.js similarity index 100% rename from src/web/.eslintrc.js rename to src/web/app/.eslintrc.js diff --git a/src/web/.gitignore b/src/web/app/.gitignore similarity index 100% rename from src/web/.gitignore rename to src/web/app/.gitignore diff --git a/src/web/Dockerfile b/src/web/app/Dockerfile similarity index 100% rename from src/web/Dockerfile rename to src/web/app/Dockerfile diff --git a/src/web/README.md b/src/web/app/README.md similarity index 100% rename from src/web/README.md rename to src/web/app/README.md diff --git a/src/web/jest.config.js b/src/web/app/jest.config.js similarity index 64% rename from src/web/jest.config.js rename to src/web/app/jest.config.js index 1adc25e30b..be42754515 100644 --- a/src/web/jest.config.js +++ b/src/web/app/jest.config.js @@ -1,6 +1,6 @@ const nextJest = require('next/jest'); -const baseConfig = require('../../jest.config.base'); +const baseConfig = require('../../../jest.config.base'); // Providing the path to your Next.js app which will enable loading next.config.js and .env files const createJestConfig = nextJest({ dir: '.' }); @@ -9,9 +9,9 @@ module.exports = createJestConfig({ ...baseConfig, preset: 'ts-jest', testEnvironment: 'jsdom', - rootDir: '../..', - testMatch: ['/src/web/src/**/*.test.{ts,tsx}'], - testPathIgnorePatterns: ['/src/web/.next', '/src/web/out'], + rootDir: '../../..', + testMatch: ['/src/web/app/src/**/*.test.{ts,tsx}'], + testPathIgnorePatterns: ['/src/web/app/.next', '/src/web/app/out'], collectCoverageFrom: ['/src/**/*{ts,tsx}'], transform: { '^.+\\.(ts)$': 'ts-jest', @@ -19,7 +19,7 @@ module.exports = createJestConfig({ }, globals: { 'ts-jest': { - tsconfig: '/src/web/tsconfig.jest.json', + tsconfig: '/src/web/app/tsconfig.jest.json', }, }, }); diff --git a/src/web/next-env.d.ts b/src/web/app/next-env.d.ts similarity index 100% rename from src/web/next-env.d.ts rename to src/web/app/next-env.d.ts diff --git a/src/web/next.config.js b/src/web/app/next.config.js similarity index 94% rename from src/web/next.config.js rename to src/web/app/next.config.js index f4616a37b3..147bdf1350 100644 --- a/src/web/next.config.js +++ b/src/web/app/next.config.js @@ -37,12 +37,12 @@ const forwardToNext = (envVar) => { }; // Try using .env in the root (legacy Telescope 1.0) -const legacyEnvPath = path.join(__dirname, '../..', '.env'); +const legacyEnvPath = path.join(__dirname, '../../..', '.env'); console.info(`Trying to load missing ENV variables from ${legacyEnvPath}`); loadApiUrlFromEnv(legacyEnvPath); // Try using the env.development file in config/ (Telescope 2.0) -const envDevelopmentPath = path.join(__dirname, '../..', 'config/env.development'); +const envDevelopmentPath = path.join(__dirname, '../../..', 'config/env.development'); console.info(`Trying to load missing ENV variables from ${envDevelopmentPath}`); loadApiUrlFromEnv(envDevelopmentPath); diff --git a/src/web/package.json b/src/web/app/package.json similarity index 100% rename from src/web/package.json rename to src/web/app/package.json diff --git a/src/web/public/googlee1d86717a49db532.html b/src/web/app/public/googlee1d86717a49db532.html similarity index 100% rename from src/web/public/googlee1d86717a49db532.html rename to src/web/app/public/googlee1d86717a49db532.html diff --git a/src/web/public/logo-badged.svg b/src/web/app/public/logo-badged.svg similarity index 100% rename from src/web/public/logo-badged.svg rename to src/web/app/public/logo-badged.svg diff --git a/src/web/public/logo.svg b/src/web/app/public/logo.svg similarity index 100% rename from src/web/public/logo.svg rename to src/web/app/public/logo.svg diff --git a/src/web/public/logoImages/apple-icon-180.png b/src/web/app/public/logoImages/apple-icon-180.png similarity index 100% rename from src/web/public/logoImages/apple-icon-180.png rename to src/web/app/public/logoImages/apple-icon-180.png diff --git a/src/web/public/logoImages/apple-splash-1125-2436.jpg b/src/web/app/public/logoImages/apple-splash-1125-2436.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1125-2436.jpg rename to src/web/app/public/logoImages/apple-splash-1125-2436.jpg diff --git a/src/web/public/logoImages/apple-splash-1136-640.jpg b/src/web/app/public/logoImages/apple-splash-1136-640.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1136-640.jpg rename to src/web/app/public/logoImages/apple-splash-1136-640.jpg diff --git a/src/web/public/logoImages/apple-splash-1170-2532.jpg b/src/web/app/public/logoImages/apple-splash-1170-2532.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1170-2532.jpg rename to src/web/app/public/logoImages/apple-splash-1170-2532.jpg diff --git a/src/web/public/logoImages/apple-splash-1242-2208.jpg b/src/web/app/public/logoImages/apple-splash-1242-2208.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1242-2208.jpg rename to src/web/app/public/logoImages/apple-splash-1242-2208.jpg diff --git a/src/web/public/logoImages/apple-splash-1242-2688.jpg b/src/web/app/public/logoImages/apple-splash-1242-2688.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1242-2688.jpg rename to src/web/app/public/logoImages/apple-splash-1242-2688.jpg diff --git a/src/web/public/logoImages/apple-splash-1284-2778.jpg b/src/web/app/public/logoImages/apple-splash-1284-2778.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1284-2778.jpg rename to src/web/app/public/logoImages/apple-splash-1284-2778.jpg diff --git a/src/web/public/logoImages/apple-splash-1334-750.jpg b/src/web/app/public/logoImages/apple-splash-1334-750.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1334-750.jpg rename to src/web/app/public/logoImages/apple-splash-1334-750.jpg diff --git a/src/web/public/logoImages/apple-splash-1536-2048.jpg b/src/web/app/public/logoImages/apple-splash-1536-2048.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1536-2048.jpg rename to src/web/app/public/logoImages/apple-splash-1536-2048.jpg diff --git a/src/web/public/logoImages/apple-splash-1620-2160.jpg b/src/web/app/public/logoImages/apple-splash-1620-2160.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1620-2160.jpg rename to src/web/app/public/logoImages/apple-splash-1620-2160.jpg diff --git a/src/web/public/logoImages/apple-splash-1668-2224.jpg b/src/web/app/public/logoImages/apple-splash-1668-2224.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1668-2224.jpg rename to src/web/app/public/logoImages/apple-splash-1668-2224.jpg diff --git a/src/web/public/logoImages/apple-splash-1668-2388.jpg b/src/web/app/public/logoImages/apple-splash-1668-2388.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1668-2388.jpg rename to src/web/app/public/logoImages/apple-splash-1668-2388.jpg diff --git a/src/web/public/logoImages/apple-splash-1792-828.jpg b/src/web/app/public/logoImages/apple-splash-1792-828.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-1792-828.jpg rename to src/web/app/public/logoImages/apple-splash-1792-828.jpg diff --git a/src/web/public/logoImages/apple-splash-2048-1536.jpg b/src/web/app/public/logoImages/apple-splash-2048-1536.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2048-1536.jpg rename to src/web/app/public/logoImages/apple-splash-2048-1536.jpg diff --git a/src/web/public/logoImages/apple-splash-2048-2732.jpg b/src/web/app/public/logoImages/apple-splash-2048-2732.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2048-2732.jpg rename to src/web/app/public/logoImages/apple-splash-2048-2732.jpg diff --git a/src/web/public/logoImages/apple-splash-2160-1620.jpg b/src/web/app/public/logoImages/apple-splash-2160-1620.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2160-1620.jpg rename to src/web/app/public/logoImages/apple-splash-2160-1620.jpg diff --git a/src/web/public/logoImages/apple-splash-2208-1242.jpg b/src/web/app/public/logoImages/apple-splash-2208-1242.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2208-1242.jpg rename to src/web/app/public/logoImages/apple-splash-2208-1242.jpg diff --git a/src/web/public/logoImages/apple-splash-2224-1668.jpg b/src/web/app/public/logoImages/apple-splash-2224-1668.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2224-1668.jpg rename to src/web/app/public/logoImages/apple-splash-2224-1668.jpg diff --git a/src/web/public/logoImages/apple-splash-2388-1668.jpg b/src/web/app/public/logoImages/apple-splash-2388-1668.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2388-1668.jpg rename to src/web/app/public/logoImages/apple-splash-2388-1668.jpg diff --git a/src/web/public/logoImages/apple-splash-2436-1125.jpg b/src/web/app/public/logoImages/apple-splash-2436-1125.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2436-1125.jpg rename to src/web/app/public/logoImages/apple-splash-2436-1125.jpg diff --git a/src/web/public/logoImages/apple-splash-2532-1170.jpg b/src/web/app/public/logoImages/apple-splash-2532-1170.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2532-1170.jpg rename to src/web/app/public/logoImages/apple-splash-2532-1170.jpg diff --git a/src/web/public/logoImages/apple-splash-2688-1242.jpg b/src/web/app/public/logoImages/apple-splash-2688-1242.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2688-1242.jpg rename to src/web/app/public/logoImages/apple-splash-2688-1242.jpg diff --git a/src/web/public/logoImages/apple-splash-2732-2048.jpg b/src/web/app/public/logoImages/apple-splash-2732-2048.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2732-2048.jpg rename to src/web/app/public/logoImages/apple-splash-2732-2048.jpg diff --git a/src/web/public/logoImages/apple-splash-2778-1284.jpg b/src/web/app/public/logoImages/apple-splash-2778-1284.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-2778-1284.jpg rename to src/web/app/public/logoImages/apple-splash-2778-1284.jpg diff --git a/src/web/public/logoImages/apple-splash-640-1136.jpg b/src/web/app/public/logoImages/apple-splash-640-1136.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-640-1136.jpg rename to src/web/app/public/logoImages/apple-splash-640-1136.jpg diff --git a/src/web/public/logoImages/apple-splash-750-1334.jpg b/src/web/app/public/logoImages/apple-splash-750-1334.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-750-1334.jpg rename to src/web/app/public/logoImages/apple-splash-750-1334.jpg diff --git a/src/web/public/logoImages/apple-splash-828-1792.jpg b/src/web/app/public/logoImages/apple-splash-828-1792.jpg similarity index 100% rename from src/web/public/logoImages/apple-splash-828-1792.jpg rename to src/web/app/public/logoImages/apple-splash-828-1792.jpg diff --git a/src/web/public/logoImages/manifest-icon-192.png b/src/web/app/public/logoImages/manifest-icon-192.png similarity index 100% rename from src/web/public/logoImages/manifest-icon-192.png rename to src/web/app/public/logoImages/manifest-icon-192.png diff --git a/src/web/public/logoImages/manifest-icon-512.png b/src/web/app/public/logoImages/manifest-icon-512.png similarity index 100% rename from src/web/public/logoImages/manifest-icon-512.png rename to src/web/app/public/logoImages/manifest-icon-512.png diff --git a/src/web/public/manifest.json b/src/web/app/public/manifest.json similarity index 100% rename from src/web/public/manifest.json rename to src/web/app/public/manifest.json diff --git a/src/web/public/noResults.svg b/src/web/app/public/noResults.svg similarity index 100% rename from src/web/public/noResults.svg rename to src/web/app/public/noResults.svg diff --git a/src/web/public/robots.txt b/src/web/app/public/robots.txt similarity index 100% rename from src/web/public/robots.txt rename to src/web/app/public/robots.txt diff --git a/src/web/public/styles/github-dark.min.css b/src/web/app/public/styles/github-dark.min.css similarity index 100% rename from src/web/public/styles/github-dark.min.css rename to src/web/app/public/styles/github-dark.min.css diff --git a/src/web/public/styles/github.min.css b/src/web/app/public/styles/github.min.css similarity index 100% rename from src/web/public/styles/github.min.css rename to src/web/app/public/styles/github.min.css diff --git a/src/web/public/vercel.svg b/src/web/app/public/vercel.svg similarity index 100% rename from src/web/public/vercel.svg rename to src/web/app/public/vercel.svg diff --git a/src/web/src/User.ts b/src/web/app/src/User.ts similarity index 100% rename from src/web/src/User.ts rename to src/web/app/src/User.ts diff --git a/src/web/src/components/AboutFooter.test.tsx b/src/web/app/src/components/AboutFooter.test.tsx similarity index 100% rename from src/web/src/components/AboutFooter.test.tsx rename to src/web/app/src/components/AboutFooter.test.tsx diff --git a/src/web/src/components/AboutFooter.tsx b/src/web/app/src/components/AboutFooter.tsx similarity index 100% rename from src/web/src/components/AboutFooter.tsx rename to src/web/app/src/components/AboutFooter.tsx diff --git a/src/web/src/components/AboutPage.tsx b/src/web/app/src/components/AboutPage.tsx similarity index 100% rename from src/web/src/components/AboutPage.tsx rename to src/web/app/src/components/AboutPage.tsx diff --git a/src/web/src/components/AdminButtons.tsx b/src/web/app/src/components/AdminButtons.tsx similarity index 100% rename from src/web/src/components/AdminButtons.tsx rename to src/web/app/src/components/AdminButtons.tsx diff --git a/src/web/src/components/AuthProvider.tsx b/src/web/app/src/components/AuthProvider.tsx similarity index 100% rename from src/web/src/components/AuthProvider.tsx rename to src/web/app/src/components/AuthProvider.tsx diff --git a/src/web/src/components/Banner.tsx b/src/web/app/src/components/Banner.tsx similarity index 100% rename from src/web/src/components/Banner.tsx rename to src/web/app/src/components/Banner.tsx diff --git a/src/web/src/components/BannerButtons.tsx b/src/web/app/src/components/BannerButtons.tsx similarity index 100% rename from src/web/src/components/BannerButtons.tsx rename to src/web/app/src/components/BannerButtons.tsx diff --git a/src/web/src/components/BannerDynamicItems.tsx b/src/web/app/src/components/BannerDynamicItems.tsx similarity index 100% rename from src/web/src/components/BannerDynamicItems.tsx rename to src/web/app/src/components/BannerDynamicItems.tsx diff --git a/src/web/src/components/DynamicImage.tsx b/src/web/app/src/components/DynamicImage.tsx similarity index 100% rename from src/web/src/components/DynamicImage.tsx rename to src/web/app/src/components/DynamicImage.tsx diff --git a/src/web/src/components/GenericInfoProvider.tsx b/src/web/app/src/components/GenericInfoProvider.tsx similarity index 100% rename from src/web/src/components/GenericInfoProvider.tsx rename to src/web/app/src/components/GenericInfoProvider.tsx diff --git a/src/web/src/components/GitHubContributorCard.tsx b/src/web/app/src/components/GitHubContributorCard.tsx similarity index 100% rename from src/web/src/components/GitHubContributorCard.tsx rename to src/web/app/src/components/GitHubContributorCard.tsx diff --git a/src/web/src/components/GitHubInfo.tsx b/src/web/app/src/components/GitHubInfo.tsx similarity index 100% rename from src/web/src/components/GitHubInfo.tsx rename to src/web/app/src/components/GitHubInfo.tsx diff --git a/src/web/src/components/LanguageSelector.tsx b/src/web/app/src/components/LanguageSelector.tsx similarity index 100% rename from src/web/src/components/LanguageSelector.tsx rename to src/web/app/src/components/LanguageSelector.tsx diff --git a/src/web/src/components/Login/LoggedIn.tsx b/src/web/app/src/components/Login/LoggedIn.tsx similarity index 100% rename from src/web/src/components/Login/LoggedIn.tsx rename to src/web/app/src/components/Login/LoggedIn.tsx diff --git a/src/web/src/components/Login/LoggedOut.tsx b/src/web/app/src/components/Login/LoggedOut.tsx similarity index 100% rename from src/web/src/components/Login/LoggedOut.tsx rename to src/web/app/src/components/Login/LoggedOut.tsx diff --git a/src/web/src/components/Login/index.tsx b/src/web/app/src/components/Login/index.tsx similarity index 100% rename from src/web/src/components/Login/index.tsx rename to src/web/app/src/components/Login/index.tsx diff --git a/src/web/src/components/Logo.test.tsx b/src/web/app/src/components/Logo.test.tsx similarity index 100% rename from src/web/src/components/Logo.test.tsx rename to src/web/app/src/components/Logo.test.tsx diff --git a/src/web/src/components/Logo.tsx b/src/web/app/src/components/Logo.tsx similarity index 100% rename from src/web/src/components/Logo.tsx rename to src/web/app/src/components/Logo.tsx diff --git a/src/web/src/components/NavBar/NavBarButton.tsx b/src/web/app/src/components/NavBar/NavBarButton.tsx similarity index 100% rename from src/web/src/components/NavBar/NavBarButton.tsx rename to src/web/app/src/components/NavBar/NavBarButton.tsx diff --git a/src/web/src/components/NavBar/index.tsx b/src/web/app/src/components/NavBar/index.tsx similarity index 100% rename from src/web/src/components/NavBar/index.tsx rename to src/web/app/src/components/NavBar/index.tsx diff --git a/src/web/src/components/PopUp.tsx b/src/web/app/src/components/PopUp.tsx similarity index 100% rename from src/web/src/components/PopUp.tsx rename to src/web/app/src/components/PopUp.tsx diff --git a/src/web/src/components/Posts/ExpandIcon.tsx b/src/web/app/src/components/Posts/ExpandIcon.tsx similarity index 100% rename from src/web/src/components/Posts/ExpandIcon.tsx rename to src/web/app/src/components/Posts/ExpandIcon.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/Commits.tsx b/src/web/app/src/components/Posts/GitHubInfo/Commits.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/Commits.tsx rename to src/web/app/src/components/Posts/GitHubInfo/Commits.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/GitHubInfoMobile.tsx b/src/web/app/src/components/Posts/GitHubInfo/GitHubInfoMobile.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/GitHubInfoMobile.tsx rename to src/web/app/src/components/Posts/GitHubInfo/GitHubInfoMobile.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/Issues.tsx b/src/web/app/src/components/Posts/GitHubInfo/Issues.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/Issues.tsx rename to src/web/app/src/components/Posts/GitHubInfo/Issues.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/PullRequests.tsx b/src/web/app/src/components/Posts/GitHubInfo/PullRequests.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/PullRequests.tsx rename to src/web/app/src/components/Posts/GitHubInfo/PullRequests.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/Repos.tsx b/src/web/app/src/components/Posts/GitHubInfo/Repos.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/Repos.tsx rename to src/web/app/src/components/Posts/GitHubInfo/Repos.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/Users.tsx b/src/web/app/src/components/Posts/GitHubInfo/Users.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/Users.tsx rename to src/web/app/src/components/Posts/GitHubInfo/Users.tsx diff --git a/src/web/src/components/Posts/GitHubInfo/index.tsx b/src/web/app/src/components/Posts/GitHubInfo/index.tsx similarity index 100% rename from src/web/src/components/Posts/GitHubInfo/index.tsx rename to src/web/app/src/components/Posts/GitHubInfo/index.tsx diff --git a/src/web/src/components/Posts/LoadAutoScroll.tsx b/src/web/app/src/components/Posts/LoadAutoScroll.tsx similarity index 100% rename from src/web/src/components/Posts/LoadAutoScroll.tsx rename to src/web/app/src/components/Posts/LoadAutoScroll.tsx diff --git a/src/web/src/components/Posts/Post.tsx b/src/web/app/src/components/Posts/Post.tsx similarity index 100% rename from src/web/src/components/Posts/Post.tsx rename to src/web/app/src/components/Posts/Post.tsx diff --git a/src/web/src/components/Posts/PostAvatar.tsx b/src/web/app/src/components/Posts/PostAvatar.tsx similarity index 100% rename from src/web/src/components/Posts/PostAvatar.tsx rename to src/web/app/src/components/Posts/PostAvatar.tsx diff --git a/src/web/src/components/Posts/PostInfo.tsx b/src/web/app/src/components/Posts/PostInfo.tsx similarity index 100% rename from src/web/src/components/Posts/PostInfo.tsx rename to src/web/app/src/components/Posts/PostInfo.tsx diff --git a/src/web/src/components/Posts/ShareButton.tsx b/src/web/app/src/components/Posts/ShareButton.tsx similarity index 100% rename from src/web/src/components/Posts/ShareButton.tsx rename to src/web/app/src/components/Posts/ShareButton.tsx diff --git a/src/web/src/components/Posts/Timeline.tsx b/src/web/app/src/components/Posts/Timeline.tsx similarity index 100% rename from src/web/src/components/Posts/Timeline.tsx rename to src/web/app/src/components/Posts/Timeline.tsx diff --git a/src/web/src/components/Posts/index.tsx b/src/web/app/src/components/Posts/index.tsx similarity index 100% rename from src/web/src/components/Posts/index.tsx rename to src/web/app/src/components/Posts/index.tsx diff --git a/src/web/src/components/SEO.tsx b/src/web/app/src/components/SEO.tsx similarity index 100% rename from src/web/src/components/SEO.tsx rename to src/web/app/src/components/SEO.tsx diff --git a/src/web/src/components/ScrollAction.tsx b/src/web/app/src/components/ScrollAction.tsx similarity index 100% rename from src/web/src/components/ScrollAction.tsx rename to src/web/app/src/components/ScrollAction.tsx diff --git a/src/web/src/components/SearchBar.tsx b/src/web/app/src/components/SearchBar.tsx similarity index 100% rename from src/web/src/components/SearchBar.tsx rename to src/web/app/src/components/SearchBar.tsx diff --git a/src/web/src/components/SearchHelp.tsx b/src/web/app/src/components/SearchHelp.tsx similarity index 100% rename from src/web/src/components/SearchHelp.tsx rename to src/web/app/src/components/SearchHelp.tsx diff --git a/src/web/src/components/SearchInput/AuthorSearchInput.tsx b/src/web/app/src/components/SearchInput/AuthorSearchInput.tsx similarity index 100% rename from src/web/src/components/SearchInput/AuthorSearchInput.tsx rename to src/web/app/src/components/SearchInput/AuthorSearchInput.tsx diff --git a/src/web/src/components/SearchInput/PostSearchInput.tsx b/src/web/app/src/components/SearchInput/PostSearchInput.tsx similarity index 100% rename from src/web/src/components/SearchInput/PostSearchInput.tsx rename to src/web/app/src/components/SearchInput/PostSearchInput.tsx diff --git a/src/web/src/components/SearchInput/SearchInput.tsx b/src/web/app/src/components/SearchInput/SearchInput.tsx similarity index 100% rename from src/web/src/components/SearchInput/SearchInput.tsx rename to src/web/app/src/components/SearchInput/SearchInput.tsx diff --git a/src/web/src/components/SearchPage.tsx b/src/web/app/src/components/SearchPage.tsx similarity index 100% rename from src/web/src/components/SearchPage.tsx rename to src/web/app/src/components/SearchPage.tsx diff --git a/src/web/src/components/SearchProvider.tsx b/src/web/app/src/components/SearchProvider.tsx similarity index 100% rename from src/web/src/components/SearchProvider.tsx rename to src/web/app/src/components/SearchProvider.tsx diff --git a/src/web/src/components/SearchResults.tsx b/src/web/app/src/components/SearchResults.tsx similarity index 100% rename from src/web/src/components/SearchResults.tsx rename to src/web/app/src/components/SearchResults.tsx diff --git a/src/web/src/components/SignUp/FormFields/CheckBoxInput.tsx b/src/web/app/src/components/SignUp/FormFields/CheckBoxInput.tsx similarity index 100% rename from src/web/src/components/SignUp/FormFields/CheckBoxInput.tsx rename to src/web/app/src/components/SignUp/FormFields/CheckBoxInput.tsx diff --git a/src/web/src/components/SignUp/FormFields/TextInput.tsx b/src/web/app/src/components/SignUp/FormFields/TextInput.tsx similarity index 100% rename from src/web/src/components/SignUp/FormFields/TextInput.tsx rename to src/web/app/src/components/SignUp/FormFields/TextInput.tsx diff --git a/src/web/src/components/SignUp/FormFields/index.tsx b/src/web/app/src/components/SignUp/FormFields/index.tsx similarity index 100% rename from src/web/src/components/SignUp/FormFields/index.tsx rename to src/web/app/src/components/SignUp/FormFields/index.tsx diff --git a/src/web/src/components/SignUp/Forms/BasicInfo.tsx b/src/web/app/src/components/SignUp/Forms/BasicInfo.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/BasicInfo.tsx rename to src/web/app/src/components/SignUp/Forms/BasicInfo.tsx diff --git a/src/web/src/components/SignUp/Forms/GitHubAccount.tsx b/src/web/app/src/components/SignUp/Forms/GitHubAccount.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/GitHubAccount.tsx rename to src/web/app/src/components/SignUp/Forms/GitHubAccount.tsx diff --git a/src/web/src/components/SignUp/Forms/Overview.tsx b/src/web/app/src/components/SignUp/Forms/Overview.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/Overview.tsx rename to src/web/app/src/components/SignUp/Forms/Overview.tsx diff --git a/src/web/src/components/SignUp/Forms/RSSFeeds.tsx b/src/web/app/src/components/SignUp/Forms/RSSFeeds.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/RSSFeeds.tsx rename to src/web/app/src/components/SignUp/Forms/RSSFeeds.tsx diff --git a/src/web/src/components/SignUp/Forms/Review.tsx b/src/web/app/src/components/SignUp/Forms/Review.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/Review.tsx rename to src/web/app/src/components/SignUp/Forms/Review.tsx diff --git a/src/web/src/components/SignUp/Forms/index.tsx b/src/web/app/src/components/SignUp/Forms/index.tsx similarity index 100% rename from src/web/src/components/SignUp/Forms/index.tsx rename to src/web/app/src/components/SignUp/Forms/index.tsx diff --git a/src/web/src/components/SignUp/Schema/FormModel.tsx b/src/web/app/src/components/SignUp/Schema/FormModel.tsx similarity index 100% rename from src/web/src/components/SignUp/Schema/FormModel.tsx rename to src/web/app/src/components/SignUp/Schema/FormModel.tsx diff --git a/src/web/src/components/SignUp/Schema/FormSchema.tsx b/src/web/app/src/components/SignUp/Schema/FormSchema.tsx similarity index 100% rename from src/web/src/components/SignUp/Schema/FormSchema.tsx rename to src/web/app/src/components/SignUp/Schema/FormSchema.tsx diff --git a/src/web/src/components/Spinner.tsx b/src/web/app/src/components/Spinner.tsx similarity index 100% rename from src/web/src/components/Spinner.tsx rename to src/web/app/src/components/Spinner.tsx diff --git a/src/web/src/components/TelescopeAvatar.tsx b/src/web/app/src/components/TelescopeAvatar.tsx similarity index 100% rename from src/web/src/components/TelescopeAvatar.tsx rename to src/web/app/src/components/TelescopeAvatar.tsx diff --git a/src/web/src/components/ThemeProvider.tsx b/src/web/app/src/components/ThemeProvider.tsx similarity index 100% rename from src/web/src/components/ThemeProvider.tsx rename to src/web/app/src/components/ThemeProvider.tsx diff --git a/src/web/src/components/ThemeToggleButton.tsx b/src/web/app/src/components/ThemeToggleButton.tsx similarity index 100% rename from src/web/src/components/ThemeToggleButton.tsx rename to src/web/app/src/components/ThemeToggleButton.tsx diff --git a/src/web/src/components/__snapshots__/AboutFooter.test.tsx.snap b/src/web/app/src/components/__snapshots__/AboutFooter.test.tsx.snap similarity index 100% rename from src/web/src/components/__snapshots__/AboutFooter.test.tsx.snap rename to src/web/app/src/components/__snapshots__/AboutFooter.test.tsx.snap diff --git a/src/web/src/components/__snapshots__/Logo.test.tsx.snap b/src/web/app/src/components/__snapshots__/Logo.test.tsx.snap similarity index 100% rename from src/web/src/components/__snapshots__/Logo.test.tsx.snap rename to src/web/app/src/components/__snapshots__/Logo.test.tsx.snap diff --git a/src/web/src/config.ts b/src/web/app/src/config.ts similarity index 100% rename from src/web/src/config.ts rename to src/web/app/src/config.ts diff --git a/src/web/src/githubReservedName.ts b/src/web/app/src/githubReservedName.ts similarity index 100% rename from src/web/src/githubReservedName.ts rename to src/web/app/src/githubReservedName.ts diff --git a/src/web/src/hooks/use-auth.ts b/src/web/app/src/hooks/use-auth.ts similarity index 100% rename from src/web/src/hooks/use-auth.ts rename to src/web/app/src/hooks/use-auth.ts diff --git a/src/web/src/hooks/use-favicon-badge.ts b/src/web/app/src/hooks/use-favicon-badge.ts similarity index 100% rename from src/web/src/hooks/use-favicon-badge.ts rename to src/web/app/src/hooks/use-favicon-badge.ts diff --git a/src/web/src/hooks/use-genericInfo.ts b/src/web/app/src/hooks/use-genericInfo.ts similarity index 100% rename from src/web/src/hooks/use-genericInfo.ts rename to src/web/app/src/hooks/use-genericInfo.ts diff --git a/src/web/src/hooks/use-preferred-theme.ts b/src/web/app/src/hooks/use-preferred-theme.ts similarity index 100% rename from src/web/src/hooks/use-preferred-theme.ts rename to src/web/app/src/hooks/use-preferred-theme.ts diff --git a/src/web/src/hooks/use-search-value.ts b/src/web/app/src/hooks/use-search-value.ts similarity index 100% rename from src/web/src/hooks/use-search-value.ts rename to src/web/app/src/hooks/use-search-value.ts diff --git a/src/web/src/hooks/use-telescope-contributor.ts b/src/web/app/src/hooks/use-telescope-contributor.ts similarity index 100% rename from src/web/src/hooks/use-telescope-contributor.ts rename to src/web/app/src/hooks/use-telescope-contributor.ts diff --git a/src/web/src/hooks/use-visibility.ts b/src/web/app/src/hooks/use-visibility.ts similarity index 100% rename from src/web/src/hooks/use-visibility.ts rename to src/web/app/src/hooks/use-visibility.ts diff --git a/src/web/src/interfaces/index.ts b/src/web/app/src/interfaces/index.ts similarity index 100% rename from src/web/src/interfaces/index.ts rename to src/web/app/src/interfaces/index.ts diff --git a/src/web/src/pages/_app.tsx b/src/web/app/src/pages/_app.tsx similarity index 100% rename from src/web/src/pages/_app.tsx rename to src/web/app/src/pages/_app.tsx diff --git a/src/web/src/pages/_document.tsx b/src/web/app/src/pages/_document.tsx similarity index 100% rename from src/web/src/pages/_document.tsx rename to src/web/app/src/pages/_document.tsx diff --git a/src/web/src/pages/about.tsx b/src/web/app/src/pages/about.tsx similarity index 100% rename from src/web/src/pages/about.tsx rename to src/web/app/src/pages/about.tsx diff --git a/src/web/src/pages/error.tsx b/src/web/app/src/pages/error.tsx similarity index 100% rename from src/web/src/pages/error.tsx rename to src/web/app/src/pages/error.tsx diff --git a/src/web/src/pages/index.tsx b/src/web/app/src/pages/index.tsx similarity index 100% rename from src/web/src/pages/index.tsx rename to src/web/app/src/pages/index.tsx diff --git a/src/web/src/pages/search.tsx b/src/web/app/src/pages/search.tsx similarity index 100% rename from src/web/src/pages/search.tsx rename to src/web/app/src/pages/search.tsx diff --git a/src/web/src/pages/signup.tsx b/src/web/app/src/pages/signup.tsx similarity index 100% rename from src/web/src/pages/signup.tsx rename to src/web/app/src/pages/signup.tsx diff --git a/src/web/src/student-quotes.js b/src/web/app/src/student-quotes.js similarity index 100% rename from src/web/src/student-quotes.js rename to src/web/app/src/student-quotes.js diff --git a/src/web/src/styles/Home.module.css b/src/web/app/src/styles/Home.module.css similarity index 100% rename from src/web/src/styles/Home.module.css rename to src/web/app/src/styles/Home.module.css diff --git a/src/web/src/styles/globals.css b/src/web/app/src/styles/globals.css similarity index 100% rename from src/web/src/styles/globals.css rename to src/web/app/src/styles/globals.css diff --git a/src/web/src/styles/telescope-post-content.css b/src/web/app/src/styles/telescope-post-content.css similarity index 100% rename from src/web/src/styles/telescope-post-content.css rename to src/web/app/src/styles/telescope-post-content.css diff --git a/src/web/src/theme/createPalette.d.ts b/src/web/app/src/theme/createPalette.d.ts similarity index 100% rename from src/web/src/theme/createPalette.d.ts rename to src/web/app/src/theme/createPalette.d.ts diff --git a/src/web/src/theme/index.ts b/src/web/app/src/theme/index.ts similarity index 100% rename from src/web/src/theme/index.ts rename to src/web/app/src/theme/index.ts diff --git a/src/web/src/translations/en/translations.js b/src/web/app/src/translations/en/translations.js similarity index 100% rename from src/web/src/translations/en/translations.js rename to src/web/app/src/translations/en/translations.js diff --git a/src/web/src/translations/es/translations.js b/src/web/app/src/translations/es/translations.js similarity index 100% rename from src/web/src/translations/es/translations.js rename to src/web/app/src/translations/es/translations.js diff --git a/src/web/src/translations/i18n.js b/src/web/app/src/translations/i18n.js similarity index 100% rename from src/web/src/translations/i18n.js rename to src/web/app/src/translations/i18n.js diff --git a/src/web/tsconfig.jest.json b/src/web/app/tsconfig.jest.json similarity index 100% rename from src/web/tsconfig.jest.json rename to src/web/app/tsconfig.jest.json diff --git a/src/web/tsconfig.json b/src/web/app/tsconfig.json similarity index 100% rename from src/web/tsconfig.json rename to src/web/app/tsconfig.json diff --git a/src/web/vercel.json b/src/web/app/vercel.json similarity index 100% rename from src/web/vercel.json rename to src/web/app/vercel.json