-
Notifications
You must be signed in to change notification settings - Fork 3
Next.js Initial Migration #1505
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
… into jk/evaluate-nextjs
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 4, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 4, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 4, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 5, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 6, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 9, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
jonkafton
added a commit
that referenced
this pull request
Sep 9, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 10, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
added a commit
that referenced
this pull request
Sep 10, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 11, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
added a commit
that referenced
this pull request
Sep 11, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 13, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
added a commit
that referenced
this pull request
Sep 13, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 16, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
added a commit
that referenced
this pull request
Sep 16, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
jonkafton
added a commit
that referenced
this pull request
Sep 18, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
jonkafton
added a commit
that referenced
this pull request
Sep 18, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
ChristopherChudzicki
pushed a commit
that referenced
this pull request
Sep 19, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
ChristopherChudzicki
added a commit
that referenced
this pull request
Sep 19, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
jonkafton
added a commit
that referenced
this pull request
Sep 23, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
jonkafton
added a commit
that referenced
this pull request
Sep 23, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
jonkafton
added a commit
that referenced
this pull request
Sep 23, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
jonkafton
added a commit
that referenced
this pull request
Sep 23, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
jonkafton
added a commit
that referenced
this pull request
Sep 24, 2024
* Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput
jonkafton
added a commit
that referenced
this pull request
Sep 24, 2024
* Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Move Storybook root to ol-components * Move GlobalStyles to ol-components * Self contained images * Storybook for Next.js * Remove react-router addon. Upgrade Storybook addons * Fix issue trying to resolve react-dom/test-utils. Storybook 8 migration script package updates * Local image * Replace react-router useLocation * Images fixes. Copy images into ol-components. Embedly fallback * Migrate routed drawer stories for @storybook/nextjs * Next.js Initial Migration (#1505) * Next.js scaffold * Supply env vars on process.env.NEXT_PUBLIC_ * Replace react-router hook with next/navigation * MUI theme provider for Next.js * Styled elements * Restructuring to bring pages and components into ssr project * Images and link fixes * Set up prerendering with React Query and fetch Featured Courses carousel on server * Head meta tags * Main entrypoint. Include in yarn workspaces. API URL for local * Add remaining homepage sections * Move into frontends * Lint fixes * Routed drawer and updates for homepage resource drawer search triggers * Move pages (conflict with Next.js Pages Router) * Webpack configs for babel loader (import type) and ignore test files from build * Typescript config, move common/urls * Updates towards successful build * Suspense boudary for header useSearchParam * Provide origin on environment (cannot reference window) * Update drawer hooks for next/navigation * Unit listing page and dependencies * Image fixes. ol-component compatibility updates * Logo image fixes and footer image * Search page * Remove temp course-serach-utils * Remove temp course-serach-utils * Channel Page. Rewrite for image paths * Move @mui/material-nextjs into ol-components * Department listing page * Topic listing page * Terms page * Privacy page * Image paths * Lockfile * Migrates the dashboard pages * Migrate learning path listing page * Migrate learning path details page * Prettier fixes * Migrate test utils. Fixes for passing typechecks on test files (excluding React Router dependencies) * Migrate the onboarding page * Migrate program letter page * Migrate error page * Resolves issue with Server Components treated as Client Components (transpiler). Wraps library imports for use in Next.js. User lists detail page. * Metadata utility * Fetch learning resource for metadata when drawer is open * Async and sync metadata utilities * .env example file * Preserve hero image aspect * Put back SliderInput * Fix linting on nextjs branch (#1509) Resolve linting errors for nextjs branch and introduce nextjs linting plugin * Fixes for successful build (#1516) - Removes unnecessary Client Component wrappers and "use client" directives. - Set `<Suspense />` boundaries to client render components that useSearchParams() around: - all of the Search page. - the Learning Resource drawer. - the dashboard carousels. * Enable Storybook action * Enable Storybook action * Update lockfile * Use client directive missing from layout --------- Co-authored-by: Chris Chudzicki <christopher.chudzicki@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What are the relevant tickets?
Closes https://github.com/mitodl/hq/issues/5244
Description (What does it do?)
Migrates the bulk of the site onto Next.js with the intention of identifying the areas of work remaining to get this to a full release and establishing viability of continuing feature development on the main branch while this is in progress.
The aim for the first Next.js release is feature parity with the existing site. The code will have been migrated onto Next.js and the base HTML for each route server side rendered with all head and metadata content. The React components that make up the body are generally Client Components on Next.js, which will determine whether to render them on the server or the client depending on whether they need to make API calls to hydrate their content or have client side interactivity.
The Next.js app is added at
./frontends/main. The existing entrypoints,./frontends/mit-learnremains in the repository, with its contents moved into./frontends/mainas they are migrated to run on Next.js. This helps ensure Git treats migrated files as moves so we can merge new features frommainwithout much difficulty.The general outcome of this initial migration was that the existing site can be migrated onto Next.js with relatively minimal code change to the React components and achieve a similar end user experience, plus the page metadata rendered on the server for search and social media previews. We should be able to continue feature development on the main branch while we ready this one for release, given there is little divergence in the components themselves and we can merge in without too much headache.
After a first release we can progressively optimize by opting Client Components into pre-rendering by fetching data on the server and loading it into the React Query cache.
The main area of work to ready this for production will be in reinstating unit tests that are not compatible with Next.js' routing (potentially replacing them with browser tests), testing the site for regressions and applying any fixes and putting the build pipelines and hosting in place. There are new paradigms introduced and plenty of gotchas around the demarcation of server and client components, when things are server rendered, and how rendered content is serialized for hydration in the browser.
Included in this PR:
Next.js project scaffolding.
App Router filesystem based routing providing entry points to our page components. This replaces React Router. The page entry points are Server Components and apply any metadata and can make API calls to populate the React Query cache.
Migrate components to run on Next.js. This involves replacing any React Router routing or navigation with Next.js equivalents, plus replacing images to make use of Next.js image optimzation. These are migrated:
The majority of pages, excluding some editor pages. The pages are marked as Client Components (
"use client"directive). Dependencypage-components,componentsandcommoncode are also migrated.ol-componentsare Client Components by nature and have been updated to for Next.js navigation.Metadata utility for producing title, description and social media tags on the server. Resource data fetched on server to populate for pages with an open drawer.
Example of prefetching API data on the server and populating the React Query cached for a fully server side rendered homepage carousel.
Env vars updated for the Next.js build. Values for the client must be prefixed and accessed with
process.env.NEXT_PUBLIC_<VAR>.Images in use migrated over and folders cleaned up.
Not included in this PR:
This constitutes the work remaining, some of which we'll need to determine the best approach for and itemize.
Unit Tests - Any of our tests that run React Router will need to be replaced (
renderTestApp()andrenderRoutesWithProviders()). We may take an approach where we mock Next.js' App Router, investigate solutions idiomatic to Next.js or replace these with Playwright browser tests. The remainder that test components directly or outside of the context of React Router should be able to be reinstated without too much trouble by mocking outnext/linkanduseRouter()fromnext/navigation.Regression Testing - We will need to test the migration manually for any regression and raise bug tickets accordingly.
RestrictedRoutelogic - This depends on the user session and therefore the wide decision on whether we want to pre-render use content. Likely not for initial release - we'll need to move RestrictedRoute to their Client Component pages to work independently of routing.Migrate remaining pages - Article detail, create, edit, upsert pages, edit channel page.
Remaining metadata - Apply metadata to remaining pages. Some of these will need server side API calls to populate.
Images - Next.js provides image optimization and mechanisms to prevent page jump as imaged are presented, with the caveat that the dimensions must be know. We need to establish whether we should use this in place of Embedly, its utility for background images and then make the updates across remaining images. One issue is that image URLs must be whitelisted in the Next.js config - a problem given we are ingesting from many sources and these are likely unknown.
Posthog - Needs to be migrated onto the App Router](https://posthog.com/docs/libraries/next-js).
Environment variables - Public variable for the browser must be prefixed
NEXT_PUBLIC_and referenced in the code on process.env for substitution at build time. We need to replace any remaining occurrences ofAPP_SETTINGSand move the .env file alongside our existing./env/*.env.Build config - Includes adding a Dockerfile for watch mode development and for running in production.
CI Pipeline - Configure a CI job to build the docker image and potentially push to a container registry.
Operations items outside of repo
Hosting - To be determined, but likely running on Heroku's docker runtime initially.
CDN - If we are only server rendering public content, all routes can be cached, with caution. The cache will need to miss for cached paths at different search params as we populate page metadata dependent on open resource drawer.
Monitoring and alerting - Operations controls in place for visibility of an additional service. For public heavily cached content we're relatively immune to spikes in traffic. If we pre-render user content we'll need to size and scale according to load.
Post initial release
How can this be tested?
./frontends/main/.env.exampleto./frontends/main/.env.yarn installdocker compose up nginx web.watchcontainer, if running../frontends/mainrunPORT=8062 yarn devhttp://od.odl.local:8062(usual assumptions on local DNS)Additional Context