You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The whole codebase should be written in similar style and using the same components/library.
Styled Component
Styled Component should be used mostly for base component like button, generic layout reused outside of one specific pages.
Grid
Material UI Grid should be used for most basic layout. Styled component should be used if the target design is not possible using Grid or if the overhead is much lower (in term of code complexity/readability & verbosity)
MaterialUI / MUI
Material UI should be used only for layout parts & low design / generic element like checkboxes. Button for exemple is specific for OpenFeedback thus MUI buttons shouldn't be used. Plus it's design are different for admin & feedback pages.
File architecture
Features should be regrouped together inside the same folder. So reducers, selectors, components used for a given feature should live inside the same folder.
Common action or selector from the admin and the feedback pages should live inside the src/core
Common components for admin or feedback should live inside the components folder like src/admin/components/OFButton.js.
Because the design of the admin and the feedback are different, they should mostly don't share components.
About this
This is just a dump of my mind regarding the organisation of the project. Everyone can contribute to those guidelines to improve them. They may probably also evolve with the time.
The text was updated successfully, but these errors were encountered:
The whole codebase should be written in similar style and using the same components/library.
Styled Component
Styled Component should be used mostly for base component like button, generic layout reused outside of one specific pages.
Grid
Material UI Grid should be used for most basic layout. Styled component should be used if the target design is not possible using Grid or if the overhead is much lower (in term of code complexity/readability & verbosity)
MaterialUI / MUI
Material UI should be used only for layout parts & low design / generic element like checkboxes. Button for exemple is specific for OpenFeedback thus MUI buttons shouldn't be used. Plus it's design are different for admin & feedback pages.
File architecture
Features should be regrouped together inside the same folder. So reducers, selectors, components used for a given feature should live inside the same folder.
Common action or selector from the admin and the feedback pages should live inside the
src/core
Common components for admin or feedback should live inside the
components
folder likesrc/admin/components/OFButton.js
.Because the design of the admin and the feedback are different, they should mostly don't share components.
About this
This is just a dump of my mind regarding the organisation of the project. Everyone can contribute to those guidelines to improve them. They may probably also evolve with the time.
The text was updated successfully, but these errors were encountered: