-
Notifications
You must be signed in to change notification settings - Fork 843
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
2021 Roadmap - First 6 months #4054
Comments
@chandlerprall I would like to contribute to this project, could you please direct me from where I can get more information of the same, and will this project be available in GSOC '21 |
Unfortunately the EUI project is not participating in GSOC this year due to our own time constraints & commitments - hopefully next year! If you'd like to contribute outside of GSOC, we have a contributing guide and curate a list of good first issues (though no one is restricted to that list). |
Do you plan to put SSR support on the roadmap? I am loving EUI and I use it in my project, but the no SSR is something that holds me back a bit. Thank you! 🙏 |
Full SSR support will not be on our roadmap anytime soon, but we accept pull requests fixing any of those issues. Our Next+EUI starter project's configuration for SSR may also be a helpful reference. |
🗓️ Move any relevant items to #5468 |
High level themes/projects
Documentation (Project Link)
We will continue providing manually-curated documentation and examples, while exploring ideas for how to better present templates and patterns. We will also explore ways to enhance the docs with automation like source code links and versioning. We will also explore ways to enhance the docs with automation like source code links and versioning.
Modularization
Continuing from 2020, this effort intends to break EUI up into smaller, more consumable pieces. We do not yet know what the boundaries look like, either for development or when importing components into a project, only that finding them is growing in importance and benefit.
CSS in JS (via Emotion)
✅ We have decided on Emotion for authoring EUI's styles, and now provide customizable, extensible theming with support for color modes (e.g. "light" and "dark"). Component conversions to happen throughout 2022.
Begin monorepo split/setup
To better support the existing, various packages within this repo it needs to move to a more "traditional" monorepo with proper tooling. This will allow us to better support downstream uses both at Elastic and by our community ❤️. It is also a requirement for separating up the
@elastic/eui
package (no expectation yet what that actually means or looks like).Bug fixes & other improvements
Barring any incoming large component work, the main focus of the first half of 2021 will be to strengthen the existing components. We will tackle our backlog of issues and in the same instance look for ways to increase efficiency at the code level.
Component level projects
We know a number of our components could use some love and care, including bug fixes and updated feature support. Some of these (below) are already being tracked.
ownFocus
#1454EuiSelectable
#5157EuiSelectable
#5387react-datepicker
tosrc/
; use EUI services #5339description
rendering should be conditional [EuiCard] card's children is an escape hatch but description is still required #4546Testing
Unit & component level
Our unit testing strategy is incomplete. For example, a major goal of EUI is to provide out-of-the-box accessibility that is either pre-configured or at least easy to implement with a pattern. That requires a lot of integration with browser APIs, which the existing jest environment falls short in. We will explore alternative environments like Cypress to enable better, more complete testing.
Validating non-breaking changes #2760
Outside of choosing React, EUI strives to be agnostic about the technical decisions of consuming applications. This requires a number of potential setups to be considered when making platform-level decisions and in some cases it's easy to accidentally neglect some case and release a breaking change without considering its full impact. We are looking to create a CI integration which will allow us validate PRs against a set of projects.
Typescript definitions update
Last year every component was converted to TypeScript (#1557) - thank you to everyone who helped! This total conversion now provides better ways to generated the eui.d.ts definitions file, and doing so will remove code & accuracy in some edge cases.
Support
We will continue to support ongoing design and development efforts across the Elastic organization. As a part of that we are tracking a number of accessibility improvements ranging from small cleanups to improving still across larger concepts.
The text was updated successfully, but these errors were encountered: