Skip to content

feat: Implement Space Management Suite for Storacha Console Toolkit#474

Closed
alikhere wants to merge 9 commits intostoracha:mainfrom
alikhere:feat/space-management-suite
Closed

feat: Implement Space Management Suite for Storacha Console Toolkit#474
alikhere wants to merge 9 commits intostoracha:mainfrom
alikhere:feat/space-management-suite

Conversation

@alikhere
Copy link
Copy Markdown
Contributor

Feature: Space Management Suite

Implements - A comprehensive, headless-first Space Management Suite for the Storacha UI toolkit.

What's New

This PR adds 6 new headless components that provide complete space management functionality:

Components Added

  1. SpacePicker - Select and filter spaces (public/private)
  2. SpaceCreator - Create new spaces with access control
  3. UploadsList - Browse uploads with pagination
  4. BlobsList - Browse blobs with pagination
  5. ShareTool - Share spaces via email or DID
  6. FileViewer - View file/blob details and metadata

Key Features

  • Headless Architecture - Logic separated from UI for maximum flexibility
  • Compound Component Pattern - Composable sub-components for customization
  • Custom Hooks - Reusable logic via hooks (e.g., useSpacePicker)
  • 100% Test Coverage - 54 comprehensive test cases (all passing)
  • Example Implementations - 5 styled example components

Architecture

Headless-First Design

All components follow the headless component pattern using ariakit-react-utils:

  • Unstyled, logic-only components
  • Style with any CSS framework
  • Compose with sub-components
  • Access state via custom hooks

Example Usage

import { SpacePicker, useSpacePicker } from '@storacha/ui-react'

function MySpacePicker() {
  return (
    <SpacePicker onSpaceSelected={(space) => console.log(space)}>
      <SpacePicker.Input placeholder="Search spaces..." />
      <SpacePicker.List />
      <SpacePicker.Empty>No spaces found</SpacePicker.Empty>
    </SpacePicker>
  )
}

Examples Included

  1. SpacePicker - Search and select spaces
  2. SpaceCreator - Create space with validation
  3. UploadsList - Paginated uploads table
  4. ShareTool - Share via email/DID
  5. SpaceManagement - Complete management UI

Closes storacha/console-toolkit#6
Part of storacha/console-toolkit#2

@alikhere alikhere requested a review from travis as a code owner October 27, 2025 23:54
@alikhere
Copy link
Copy Markdown
Contributor Author

alikhere commented Oct 29, 2025

Hey @Dhruv-Varshney-developer @travis @Nkovaturient, Could you please take a quick look at the PR and share your feedback, Thanks!

Copy link
Copy Markdown

@Nkovaturient Nkovaturient left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work @alikhere
the space component suite is in a modular setup.

@alikhere alikhere force-pushed the feat/space-management-suite branch from 01cc890 to 3feaa60 Compare November 2, 2025 19:52
@alikhere alikhere force-pushed the feat/space-management-suite branch from 3feaa60 to fa7372c Compare November 2, 2025 20:16
@alikhere alikhere closed this Jan 23, 2026
@alikhere
Copy link
Copy Markdown
Contributor Author

Closing this as the PR moved to storacha/console-toolkit#11

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat (console toolkit): Space Management Suite

2 participants