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

Improve components structure in the web app #83

Closed
1 task done
nevendyulgerov opened this issue Dec 6, 2023 · 4 comments · Fixed by #90
Closed
1 task done

Improve components structure in the web app #83

nevendyulgerov opened this issue Dec 6, 2023 · 4 comments · Fixed by #90
Assignees
Labels
Type: Feature Add a new feature to the system

Comments

@nevendyulgerov
Copy link
Contributor

nevendyulgerov commented Dec 6, 2023

📄 Context

Currently, components folder in the web app contains a flat list of components. The only way to add new components is vertically, by creating another file directly inside components folder.

As the application grows, if we continue to use this structure, we'll end up with a large vertical list of components. So, to prevent this, we'd like to have the ability to expand that folder vertically as well as horizontally to allow for better organisation of components via groups.

This means that we'd need to change the structure of components folder and introduce subfolders that would contain individual components. Suggested structure is:

- components
  - base
    - address.tsx
    - cartesiLogo.tsx
  - cards
    - inputCard.tsx
  - forms
    - connectionForm.tsx
  - layout
    - footer.tsx
    - shell.tsx
  - tables
    - inputsTable.tsx
    - inputRow.tsx
    - applicationRow.tsx

✔️ Solution

Implement the above described folder structure for components folder.

🎯 Definition of Done

  • components folder contains subfolders (groups) instead of a flat vertical structure.
@nevendyulgerov nevendyulgerov added Type: Feature Add a new feature to the system Status: Needs triage Explorer team assessment needed labels Dec 6, 2023
@github-project-automation github-project-automation bot moved this to 📌 Todo in Explorer Unit Dec 6, 2023
@nevendyulgerov
Copy link
Contributor Author

Hey @brunomenezes , @tuler , please let me know if you agree for this to be implemented.

@nevendyulgerov nevendyulgerov changed the title Improve component organisation in the web app Improve components organisation in the web app Dec 6, 2023
@tuler
Copy link
Member

tuler commented Dec 6, 2023

I usually prefer a separation using the semantics of the component instead of the element type. “Layout” is the semantics.

@nevendyulgerov nevendyulgerov changed the title Improve components organisation in the web app Improve components structure in the web app Dec 6, 2023
@brunomenezes
Copy link
Collaborator

I would use feature-based for better grouping. For example, Connections/ Inputs/. In the proposed structure, the Connection components would be scattered around. I would keep the generic ones in the components/ to avoid nesting too much or create a commons/.

@nevendyulgerov
Copy link
Contributor Author

nevendyulgerov commented Dec 7, 2023

I'm ok with using feature-based grouping and having the base components directly inside components/. Let's proceed with this structure.

@nevendyulgerov nevendyulgerov self-assigned this Dec 8, 2023
@nevendyulgerov nevendyulgerov removed the Status: Needs triage Explorer team assessment needed label Dec 8, 2023
@nevendyulgerov nevendyulgerov moved this from 📌 Todo to 🧑‍💻 In Progress in Explorer Unit Dec 13, 2023
@nevendyulgerov nevendyulgerov moved this from 🧑‍💻 In Progress to 👁 In Review in Explorer Unit Dec 15, 2023
@github-project-automation github-project-automation bot moved this from 👁 In Review to 📦 Done in Explorer Unit Jan 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature Add a new feature to the system
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants