Skip to content

🚀 - Add changelog inside the web application  #242

@riccardoperra

Description

@riccardoperra

Description

Users should be notified when a new update of the app has been released. The idea is to handle a changelog component which will shows all info about the newest release.

Here's some recommendation/questions that we've discussed with @hackpirodev:

Dialog once you open the app

Guest users will see a full screen dialog with the latest release info the first time they see the page. (Then we will save a "user read" flag in the local storage in order to save this info locally.

For Authenticated users we may save this info using the Auth0 user metadata

How we retrieve the content

We have some ideas about how rendering the content of the release automatically:

  • Notion Content Landing Page
  • Github releases
  • Save the content in our database/backend? We may have more control but Railway is not free 😄

Here are some things that we have to analyze in order to take the right way:

  • We need to skip the patch/fixes releases or don't make them more priority than a more important release
  • We need to handle the markdown / have some metadata in order to display "title",. "thumbnail", "small description", "full description". Can we group these in order to show a grouped content? (e.g. Majors first, then minors inside it and all patches listed above)
  • How can we know if there is a new release?
  • How much this change impact in performance for bundle size, fcp/lcp (lighthouse) scores?

How to display this content in the website

How we render the content

In my opinion MDX could be the right choice since there are some examples of using solid with mdx content
in order to also have more flexibility (what if we need to render some custom content inside?)

In the case we choose Notion, we have to make sure we can render his blocks without taking a lot of effort since there aren't libraries that does this job right now (there is an example for React https://github.com/splitbee/react-notion) but implementation could be easier without VDOM

cc @hackpirodev

Metadata

Metadata

Assignees

Labels

P1Priority first issuesdocumentationImprovements or additions to documentationfeatureNew feature or request

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions