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

Studio New Architecture #725

Closed
3 tasks done
Amzani opened this issue Jul 7, 2023 · 9 comments
Closed
3 tasks done

Studio New Architecture #725

Amzani opened this issue Jul 7, 2023 · 9 comments
Labels

Comments

@Amzani
Copy link
Collaborator

Amzani commented Jul 7, 2023

Problem

What's the story exposing the problem the users are facing

As we are working on #684 we discovered some rabbit holes and challenges when it comes to NextJS migration.

To address theses challenges we want to setup up some architecture foundations for studio to enable a smooth and an easy migration to NextJS.

Solution

Proposed solution with mockups, views...

This bet will cover 2 parts:

First part

The idea is the have the new NextJS app inside the same mono-repo and reuse the existing components / ui design system. We want to avoid having long lived branch and avoid future conflicts.

Location of the new app

apps/studio -> current app
apps/design-system
apps/studio-next -> NextJS app

The deployment and hosting should be accommodated to enable beta users to visite the studio-next app.

Second part

Create an ADR to decide the new NextJS app architecture and answer theses questions:

  • Where to define the business logic ?
  • What's the size of a component ?
  • Architecture pattern to use (MVC?)
  • State manager to use

Rabbit holes

Potential technical, design ... challenges

  • Some components like monaco editor might be challenging to integrate.

Scope

Describe a list of tasks or issues that needs to be done ( you don't need to have an exhaustive list of all the tasks in the beginning)

Out of bounds

What won't be part of the scope

We don't necessary need to have all the existing features up and running in the new app. This bet intention is to set the stage and enable future contributions.

Success criteria

How do we know we made a good bet

@Amzani Amzani converted this from a draft issue Jul 7, 2023
This was referenced Jul 7, 2023
@Amzani
Copy link
Collaborator Author

Amzani commented Jul 7, 2023

@fmvilas @Shurtu-gal don't hesitate to add anything missing here.

@fmvilas
Copy link
Member

fmvilas commented Jul 7, 2023

I'd love to suggest that we get rid of Monaco and replace it with CodeMirror. Or at least try and see if it's better than what we have. Would you put it in a different bet issue?

@Shurtu-gal
Copy link
Collaborator

Yeah, but the main issue is not with Monaco but how we expose the services. I guess they were written to maintain the business logic in a central place for ease of access and maintenance. Let's try to find a solution for nextJS while following the same.

@fmvilas
Copy link
Member

fmvilas commented Jul 8, 2023

Yup, that definitely is the priority but don't want to lose the opportunity to kill Monaco with fire 🔥 😄

@Shurtu-gal
Copy link
Collaborator

Funny thing, github itself uses code-mirror.
Meanwhile leetcode uses monaco along with next.

@fmvilas
Copy link
Member

fmvilas commented Jul 13, 2023

Drafted some initial considerations for our archtiecture: #739. Feel free to suggest adding, editing, or removing things.

Copy link

This issue has been automatically marked as stale because it has not had recent activity 😴

It will be closed in 120 days if no further activity occurs. To unstale this issue, add a comment with a detailed explanation.

There can be many reasons why some specific issue has no activity. The most probable cause is lack of time, not lack of interest. AsyncAPI Initiative is a Linux Foundation project not owned by a single for-profit company. It is a community-driven initiative ruled under open governance model.

Let us figure out together how to push this issue forward. Connect with us through one of many communication channels we established here.

Thank you for your patience ❤️

@github-actions github-actions bot added the stale label Dec 28, 2023
Copy link

shapeit-bot bot commented Dec 28, 2023

Thanks for creating a new pitch 🥳. You can now create or link existing scopes.
You can create new scopes in two different ways:

Option 1

  1. Edit the Pitch or Bet issue
  2. Add your scope under the scope section

See this example

Option 2

  1. Create a new issue
  2. Add this keywork in the description related to #ISSUE_BET_NUMBER

See this example

@Amzani
Copy link
Collaborator Author

Amzani commented Feb 16, 2024

Closing this for now! as studio will need a complete revamp/rewrite with the new DX Working group direction.

@Amzani Amzani closed this as completed Feb 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: No status
Development

No branches or pull requests

3 participants