Skip to content
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

[CAL-2093] RFC: Incrementally adopt migrate dashboard to Next.js App Router #9923

Closed
4 of 18 tasks
zomars opened this issue Jul 4, 2023 · 9 comments
Closed
4 of 18 tasks
Assignees
Labels
5 points Created by SyncLinear.com consumer ✨ feature New feature or request 🧹 Improvements Improvements to existing features. Mostly UX/UI Medium priority Created by Linear-GitHub Sync performance area: performance, page load, slow, slow endpoints, loading screen, unresponsive
Milestone

Comments

@zomars
Copy link
Member

zomars commented Jul 4, 2023

We're planning into slowly start adopting certain areas of the dashboard and migrate them to the new Next.js App Router philosophy. We're expecting this change will help with overall navigation, performance and "snappiness" improvements over the current dashboard.

Nextjs official upgrade guide

Prep-work needed

#9930

Move pages to the app directory

  • Create a page.tsx file (the main host for the server components) for each route.
  • Migrate the functionality in every occurrence of getServerSideProps to everypage.tsx
  • Migrate the functionality in every occurrence of getInitialProps to everypage.tsx
  • Reimplement getStaticProps as generateStaticParams in every page.tsx
  • Implement generateMetadata in every page.tsx , if applicable.
  • Create a component.tsx file or similar (the main host for the client-rendered page’s component) for every route.
  • Create a layout.tsx page for every route.
  • Create an error.tsx page for every route, if necessary.
  • Remove the pages directory

Sections to migrate (by priority order)

  • /event-types
  • /bookings
  • /settings Sean will explore this
  • /availability
  • /teams
  • /apps
  • /insights
  • /workflows
  • /getting-started

From SyncLinear.com | CAL-2093

@zomars zomars added 🧹 Improvements Improvements to existing features. Mostly UX/UI High priority Created by Linear-GitHub Sync performance area: performance, page load, slow, slow endpoints, loading screen, unresponsive labels Jul 4, 2023
@zomars zomars added this to the v3.2 milestone Jul 4, 2023
@maige-app maige-app bot added the ✨ feature New feature or request label Jul 4, 2023
@zomars zomars changed the title RFC: Incrementally adopt migrate dashboard to Next.js App Router [CAL-2093] RFC: Incrementally adopt migrate dashboard to Next.js App Router Jul 4, 2023
@zomars zomars self-assigned this Jul 4, 2023
@zomars zomars added the 5 points Created by SyncLinear.com label Jul 4, 2023
@PeerRich PeerRich added linear Sync Github Issue from community members to Linear.app and removed linear Sync Github Issue from community members to Linear.app labels Jul 17, 2023
@alexbit-codemod
Copy link

[notes from meeting with Omar and Greg]

  1. first we do take care of [CAL-2097] RFC: Migrating next/router hooks to next/navigation hooks #9929 (ETA: 21JUL)
  2. then we work on bootstrapping [CAL-2098] RFC: Bootstrapping Next App directory #9930 starting 24JUL. ETA 28JUL.
  3. Then we will be ready for page migrations. we will start with the Event pages which is a complex one but has the biggest potential for perf improvement.

@zomars
Copy link
Member Author

zomars commented Jul 19, 2023

@sean-brydon will explore bootstrapping in parallel

@keithwillcode keithwillcode modified the milestones: v3.2, v3.3 Aug 14, 2023
@keithwillcode keithwillcode modified the milestones: v3.3, v3.4 Sep 15, 2023
@PeerRich PeerRich added linear Sync Github Issue from community members to Linear.app and removed linear Sync Github Issue from community members to Linear.app labels Sep 25, 2023
@keithwillcode keithwillcode added Medium priority Created by Linear-GitHub Sync and removed High priority Created by Linear-GitHub Sync labels Sep 27, 2023
@zomars
Copy link
Member Author

zomars commented Mar 14, 2024

Currently blocked due to ban issue with app/not-found conflicting with our next.config rewrites vercel/next.js#58945

@zomars zomars modified the milestones: v3.9, v4.0 Mar 16, 2024
@keithwillcode keithwillcode modified the milestones: v4.0, v4.1 Apr 15, 2024
@zomars zomars modified the milestones: v4.1, v4.2 May 15, 2024
@zomars
Copy link
Member Author

zomars commented May 21, 2024

Currently blocked due to ban issue with app/not-found conflicting with our next.config rewrites vercel/next.js#58945

Found another possible related issue with the rewrite usage with both app dir and afterFiles: vercel/next.js#48002

@PeerRich PeerRich modified the milestones: v4.2, v4.3 Jun 3, 2024
@zomars zomars modified the milestones: v4.3, v4.4 Jun 3, 2024
@keithwillcode keithwillcode modified the milestones: v4.4, v4.5 Jul 16, 2024
@keithwillcode keithwillcode modified the milestones: v4.5, v4.6 Sep 15, 2024
@keithwillcode keithwillcode modified the milestones: v4.6, v4.7 Oct 16, 2024
@keithwillcode keithwillcode modified the milestones: v4.7, v4.8 Nov 18, 2024
@giteshsarvaiya
Copy link

Is this issue still up for contribution ?

@hbjORbj
Copy link
Contributor

hbjORbj commented Dec 11, 2024

@giteshsarvaiya Hi! I am leading this migration project. Would be great if you can pick up other community tasks! Feel free to review my PRs if you are interested in migration: https://github.com/calcom/cal.com/pulls/hbjORbj

@hbjORbj
Copy link
Contributor

hbjORbj commented Dec 11, 2024

@zomars I will close this issue as we manage this in Linear!

@hbjORbj hbjORbj closed this as completed Dec 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
5 points Created by SyncLinear.com consumer ✨ feature New feature or request 🧹 Improvements Improvements to existing features. Mostly UX/UI Medium priority Created by Linear-GitHub Sync performance area: performance, page load, slow, slow endpoints, loading screen, unresponsive
Projects
None yet
Development

No branches or pull requests

7 participants