# UI Components

# UI Components

Curiosity Workspace provides a set of built-in UI components and the ability to build custom interfaces using the Tesserae component library.

# Built-in Components

Curiosity Workspace includes several high-level components that can be used out-of-the-box or customized:

  • SearchArea: A comprehensive search interface with query input, filters, and results.
  • GraphExplorer: A visual tool for exploring nodes and edges in the graph.
  • Neighbors: A component that displays related nodes for a selected entity.
  • NodeDetail: Displays all properties and metadata for a specific graph node.

# Custom Components with Tesserae

For developers building custom front-ends, Curiosity Workspace leverages Tesserae, a modern UI toolkit for building rich web-based user interfaces using C#.

# Why use Tesserae?

  • Strongly Typed: Build interfaces with C# and the H5 compiler.
  • Component-Driven: Composable UI elements for rapid development.
  • Integrated: Designed to work seamlessly with Curiosity Workspace APIs.

# Building Custom Interfaces

To build a custom interface:

  1. Define the requirement: Determine which data from the graph/search needs to be displayed.
  2. Create a Tesserae project: Set up a new project using the Tesserae library.
  3. Connect to APIs: Use the Workspace REST or GraphQL APIs to fetch data.
  4. Deploy: Register your custom interface in the workspace configuration.

See the Tesserae Documentation for a complete guide on using the component library.