From d1c538ab745773a663b2ec7a38b750144e58eb80 Mon Sep 17 00:00:00 2001 From: Khuda Dad Nomani <32505158+KhudaDad414@users.noreply.github.com> Date: Mon, 29 Apr 2024 13:51:50 +0100 Subject: [PATCH] Create 0007-use-nextjs.md --- doc/adr/0007-use-nextjs.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 doc/adr/0007-use-nextjs.md diff --git a/doc/adr/0007-use-nextjs.md b/doc/adr/0007-use-nextjs.md new file mode 100644 index 000000000..38c191ee4 --- /dev/null +++ b/doc/adr/0007-use-nextjs.md @@ -0,0 +1,28 @@ +# 7: Use pnpm packagage manager + +Date: 2024-04-29 + +## Status + +Accepted + +## Context + +AsyncAPI Studio is currently a CRA application and runs entirely on the client. +We find the need for a more robust and scalable solution to handle UI rendering and enhance the user experience. There are several [key considerations](https://github.com/asyncapi/studio/issues/661#issuecomment-1594226439) leading to this proposal. + + +## Decision + +Following [our discussion](https://github.com/asyncapi/studio/issues/661), we have decided to adopt Next.js as the new front-end framework for AsyncAPI Studio. Next.js offers several advantages that align with our requirements: + +- **Server-Side Rendering (SSR)**: Next.js allows components to render on the server side, speeding up initial page load times in the future. +- **Automatic Code Splitting**: It automatically splits code at the component level, allowing users to load only the necessary amount of code. It will be specially useful when we have the visaul editor. + + +## Consequences + +Adopting Next.js for AsyncAPI Studio will lead to: + +- Improved Load Times and Performance. +- Intial effort for migration.