chakra-ui-docs
chakra-ui-docs copied to clipboard
Improve `/changelog` page performance
Subject
Changelog
Description
There's a warning from Next.js about the changelog page being too large in size.
Warning: data for page "/changelog" is 250 kB, this amount of data can reduce performance.
I'm thinking we can use progressive disclosure to improve the page's performance. Here are some ideas:
- Show the changelog for only the current version, and hide the rest
- Include the Table of Content on the right side that shows the previous versions so the users can navigate to the version they're interested in.
- Consider using a dynamic route
/changelog/<version>
to determine which changelog to show
@segunadebayo I'd be happy to work on this
Go for it, @jacobhq!
Ideas for the UI and execution:
https://releases.figma.com/ (this one solves the problem with pagination) https://www.sketch.com/updates/ (same with this) https://www.raycast.com/changelog https://linear.app/changelog
Also here's a bunch of good looking changelogs: https://www.changelogs.gallery/
P.S. Our changelog is already on that list 😎
Thanks, I'll make sure it stays on that list :)
Hi! This issue has been automatically marked as stale because lack of recent activity. It will be closed if no further activity occurs within 5 days. Thank you for your contributions.
A mental model I have to resolve this:
- In the core repo, break each changelog versions into their own files so we have a structure like
.changelog/v2.0.0.mdx
,.changelog/v2.0.2.mdx
, etc. - Update the GitHub actions in the core repo, such that we also write to the
.changelog/v{{version}}.mdx
This makes it easier to consume in the docs repo. - In the changelog page, show the changelog for the most recent version.
- add a version selector for those who want to go back in time. As they pick the version we can navigate to
/changelog/v{{version}}
in Next.js which will display the changelog for the selected version.
This will help us achieve progressive disclosure and reduce the page size.
Hi! This issue has been automatically marked as stale because lack of recent activity. It will be closed if no further activity occurs within 5 days. Thank you for your contributions.
Hey would anyone else like to take this one, I'm not sure I'll be able to make much progress on it.
Lazar and I worked on this today.
All that's left is to update the pages/changelog code to pick the correct changelog to render.
This is now done. cc @nikolovlazar @segunadebayo