Open
Description
We should allow extension developers to use a library of standardized UI components so that we can ensure a consistent visual design throughout CodeEdit and it's extensions.
The following UI components will need to be available for extensions to use for views in the navigator, inspector, and debug areas:
- Stacks
- HStack
- VStack
- ZStack
- List
- Section
- SectionHeading
- ListItem
- TreeListItem
- ListItemDetails
- Section
- Grid
- Menu
- MenuItem
- Button
- Popover
- Pickers
- Segmented/Menu-style Picker (Select)
- Color Picker (Swatch)
- Date/Time Picker
Possible UI elements (need further elaboration):
- Tabs
- Tab
Note: some of these are standard to SwiftUI however depending on our architecture we may need to expose these through CodeEditKit.
Other considerations:
- We could possibly use this UI library internally.
- If we decide to build a JavaScript API, we'd also need to create a set of React components.
We should also keep in mind what we plan to allow developers to extend. This might include:
- Navigators
- Inspectors
- Debuggers (is that what we want to call these?)
- Previews
- Languages/Grammars (what should this include?)
- Commands
- Formatters
- Validators (places warnings and errors in code)
- Snippets
- Code completions
- Project Templates
- Task Runners (not sure about the accuracy of this name - provide necessary fields to configure tasks for a particular language/framework)
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
📋 Backlog