This library is a work in progress. It's not published on npm just yet, and documentation is incomplete. But you can checkout these:
- A WIP demo
- storybook
- The current state of the documentation.
JUI is JetBrain's IntelliJ Platform UI implemented as a React.js library. A lot of accessibility aspects are implemented using hooks from react-aria and friends.
If you too love the user experience of the JetBrains products, and the developer experience of creating UI applications with react, you may find this interesting.
jui-demo-2.mp4
Component | Feature | Status | |
---|---|---|---|
List | |||
Speed Search | ✅ | ||
Divider | ✅ | ||
Disabled | ✅ | ||
Virtualization | ✅ | ||
Sections (with title) | ✅ | ||
Access to state in items (selected, focused, disabled) | ✅ | ||
Showing item overflow on hover | ❌ | ||
Tree | |||
Base | ✅ | ||
Speed Search | ✅ | ||
Virtualization | ✅ | ||
Tree with checkboxes 🧬 | ✅ | ||
Showing item overflow on hover | ❌ | ||
Tooltip | ✅ | ||
Progress Bar | ✅ | ||
Icon | ✅ | ||
Breadcrumb | ❌ | ||
Theming | |||
Theme objects based on theme json files | ✅ | ||
Support for XML color schemes | ❌ | ||
Checkbox | ✅ | ||
Button | ✅ | ||
Split Button | ❌ | ||
Icon Button (aka ActionButton) | ✅ | ||
Icon Button with menu 🧬 | ✅ | ||
Toolbar | ✅ | ||
Drop-Down List | ✅ | ||
Combo Box | ✅ | ||
Menu List 1 | |||
Basic | ✅ | ||
Speed search | ✅ | ||
Notifications | |||
Balloon | ✅ | ||
Alert | ✅ | ||
Action System | |||
Shortcut abstractions (KeyStroke, KeyboardShortcut, etc.) | ✅ | ||
Common shortcuts | ❌ | ||
Keymap | ✅ | ||
OS-based keymap | ❌ | ||
Popup | ✅ | ||
Tabs | |||
Basic support | ✅ | ||
multiple rows | ✅ | ||
single row - scroll | ✅ | ||
single row - shrink | ❌ | ||
Overflow dropdown menu | ✅ | ||
Vertical (tab placement left/right in the editor) | ❌ | ||
ThreeViewSplitter | ✅ | ||
StatusBar | ✅ | ||
Tool window | |||
Basic functionality | ✅ | ||
Reordering windows | ✅ | ||
Moving windows between anchors | ✅ | ||
Widescreen layout | ✅ | ||
Side by side layout on left or right | ❌ | ||
toggling tool window bars | ✅ | ||
Hide action | ✅️ | ||
Remove from sidebar action | ️✅ | ||
Maximize action | ✅ | ||
Resize | ✅ | ||
View Mode - Dock pin | ✅ | ||
View Mode - Dock unpin | ✅ | ||
View Mode - Undock | ✅ | ||
View Mode - Float | ✅ | ||
View Mode - Window 2 | ❌ | ||
Multiple view with tab switcher in the header | ✅ | ||
Multiple view with dropdown switcher in the header | ❌ | ||
Gear icon actions | ✅ | ||
ModalWindow | ✅ | ||
Alert | ✅ | ||
InputField | |||
Basic support ( validation, label placement, context help, disabled) | ✅ | ||
Built-in buttons | ✅ | ||
Expandable | ❌ | ||
SearchField | |||
Basic SearchField | ✅ | ||
With history popup | ✅ | ||
Link | ✅ |
🧬: higher level "molecule" components that capture a common usage of two or more atomic components, together.
- It seems in Intellij UI, such menu lists are only used in popups. Maybe only FlatSpeedSearchPopup
- Most probably will not be implemented.