Skip to content

Build UI Library Available for Extensions #9

Open
@austincondiff

Description

@austincondiff

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
  • 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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    📋 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions