Replies: 1 comment
-
Please note, this write-up is still a work in process, there are several issues I need to spend some time opening to add additional details to some of these items, but figured it wouldn't hurt to start a discussion item now while I'm adding detail :) |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Goals
Highest Priority
Rewrite
Dialog
componentIssue: #930
Impact
Replacing our current Dialog which uses
@reach/dialog
is the highest priority upcoming issue as it is blocking our ability to upgrade Primer React Components to use React 17, which other teams at GitHub are waiting on PRC to upgrade to React 17. Removing this dependency would also reduce our bundle size significantly (my estimates are by 15-20%) and give us more fine grained control over Dialog behaviors.Related Goals: Support + DX Groundwork
Status: 🔍 In Review
Scope
2 weeks for one engineer + heavy testing and review support for at least one other engineer
Upgrade to React 17
Issue:
Impact
As mentioned above, this work relies on the above
Dialog
refactor. This would allow other teams at GitHub who are using PRC to upgrade to React 17 which includes improvements related to event bubblingRelated Goals: Support
Scope
Fairly small, most of the work is done already in #942 but we need the Dialog work to be done in order to merge it.
Status: 📈 In Progress
Expand Behavior Coverage
Issue: #963
Impact
Related Goals: Support
Scope
Status: 📈 In Progress
TypeScript Refactor
Issue:
Impact
Refactoring our codebase in TypeScript would make our library less bug prone by enforcing type safety in the implementation of our components, reduce the amount of issues we face with our manual maintenance of our index.d.ts file, and make upstreaming components from other projects at GitHub written in TS much much faster allowing us to greatly improve our contributor experience.
Related Goals: Stability + Support
Scope
At least one engineer, 2-3 weeks
Status: In Progress
SelectMenu
improvements + Menu refreshThis work includes behavior changes to our SelectMenu, and audit of menus used in Memex, and possible addition of new components + refresh of existing components from @vdepizzol work on our new menu system.
Issues:
onOutsideClick
& Portals #940Impact
This would would significantly reduce complexity in our main internal "customer"'s codebase and would set us up to make broader menu changes in the future.
Related Goals: Stability and Support
Status: Not started
Support color modes in PRC + theming audit
Issue: #639
Impact
This may be a significant amount of work and is paramount to enabling dark modes in projects at GitHub that are using Primer React Components. Refactoring our theme should also enable the ability to theme for other brands at GitHub using PRC and could open the door to building out developer tooling like intelligence for our system props in VSCode.
Related Goals: Support + DX Groundwork
Scope
2-4 weeks for one engineer + heavy testing & review support from at least 2 other engineers
Status: Not started
Add ref forwarding to all components
Issue: #901
Impact
Adding ref forwarding to all PRC components would greatly increase the flexibility of using PRC in another application and would reduce the need to add wrapping
div
s orspan
s just to add refs, which can potentially cause layout issuesScope
1 week for 1 engineer + extra time for testing & review
Status: Not started
Stretch Goals
cc @colebemis @BinaryMuse @broccolini
Beta Was this translation helpful? Give feedback.
All reactions