Design decisions for the frontend of DocsGPT #543
adeyinkaezra123
started this conversation in
Ideas
Replies: 1 comment 2 replies
-
Hi @adeyinkaezra123 , Thank you for your input. We recently introduced tests for backend and forntend needs them too. and our UI review process is suffering
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
To start with, hats off to the maintainers of this repo. Your dedication and hard work have truly made a difference.
Intro
I started working on this repo not so long ago, and I noticed quite a few concerns regarding the design decisions of the frontend side of DocsGPT
I totally understand the ship fast, fail fast strategy, and I resonate deeply with the if it's not broken, don't fix it philosophy, as most developers are mainly concerned with over-optimizations and trying to build with the latest frameworks and stuff, rather than focusing on the core features. But maybe this repo could use some help
I feel like a discussion would be more appropriate as it would open up a new phase of understanding the reasons behind these decisions, and might serve as a source of truth for newer decisions to be made
I recently began my involvement with this repository, and I've observed certain concerns related to the front-end design choices in DocsGPT. I fully understand the "ship fast, fail fast" approach and resonate with the "if it's not broken, don't fix it" philosophy, as any developers tend to prioritize excessive optimizations and adopting the latest frameworks over core features.
However, I believe that this repository could benefit from some improvements.
In my view, initiating a discussion, rather than raising multiple PRs would be more appropriate. It could pave the way for a deeper understanding of the rationale behind these decisions and establish a foundation for making future decisions based on a shared understanding.
Suggestions
Embracing the Single-responsibility principle
A function — and therefore a React component — should be doing one thing. Typically, it is best practice to create React components in their own files and export them for use in other files that need them as allows you to reuse and share components and makes it easier to manage complex logic.
Moving to a structured Development environment for UI components
Since developers with various engineering backgrounds and software development preferences may contribute to this repository, it's crucial to establish well-organized UI systems. This will enhance efficiency in both the development process and documentation. Utilizing a UI development environment like Storybook ensures that UI components adhere to strict guidelines based on validated design decisions, rather than relying solely on visual interpretation from a Figma design.
Tests, was surprised none exists yet
The title is quite clear. Nevertheless, a successful test must guarantee how the application (or a specific component) behaves from a user's viewpoint. Writing tests to validate implementation specifics is a misuse of precious time, and the test coverage would offer only a deceptive sense of security.
Moving to a monrepo
This is opinionated, as not all teams can tap into monorepo benefits:
Beta Was this translation helpful? Give feedback.
All reactions