Skip to content

[dasc] Improve Schema Editor UX and Schema Validation #567

Description

@kozmaadrian

Summary

After extensive use of the Schema Editor, several usability issues have become apparent. This proposal focuses on improving the schema management experience while also strengthening schema validation to prevent unsupported or invalid schemas from being created.

Proposed Improvements

UI Enhancements

1. Replace the schema selector with a navigation list

The current dropdown works well for a small number of schemas but becomes difficult to use as the list grows.

Proposal:

  • Replace the dropdown with a dedicated schema list in the left of the schema editor.
  • Make switching between schemas faster and more intuitive with a click.

2. Add local search

Finding a specific schema becomes increasingly difficult as the number of schemas grows.

Proposal:

  • Add a client side search field to quickly locate schemas.
  • If a sidebar list is implemented, the search should simply filter the visible schemas.

3. Improve the "Create Schema" workflow

Creating a new schema is currently hidden behind the schema selection dropdown.

Proposal:

  • Provide a dedicated Create Schema button or other clearly visible entry point.
  • Make the creation workflow more discoverable and user friendly.

4. Support deep linking

It should be possible to open the Schema Editor directly with a specific schema selected.

Proposal:

  • Support URLs that reference a schema (for example, via a route or query parameter).
  • Enable bookmarking (browser) and sharing links to individual schemas for quick access.

Hardening

Validate schemas with da-sc-sdk

Leverage the da-sc-sdk to validate schemas before they are created or saved.

Benefits:

  • Prevent unsupported or invalid schemas from being created.
  • Ensure consistency with the SDK validation rules.
  • Reduce runtime errors caused by malformed schemas.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions