Skip to content

feat(workspace): add StudioWorkspace embeddable export#51

Merged
cevheri merged 22 commits into
mainfrom
feat/studio-workspace-export
Mar 26, 2026
Merged

feat(workspace): add StudioWorkspace embeddable export#51
cevheri merged 22 commits into
mainfrom
feat/studio-workspace-export

Conversation

@cevheri
Copy link
Copy Markdown
Contributor

@cevheri cevheri commented Mar 26, 2026

Summary

  • Add @libredb/studio/workspace export — embeddable StudioWorkspace composite component for platform integration
  • Add @libredb/studio/providers, @libredb/studio/types, @libredb/studio/components package exports
  • Add tsup build config (bun run build:lib) for library distribution (ESM + CJS + types)
  • Add adapter hooks (useConnectionAdapter, useQueryAdapter) with full test coverage
  • Implement scoped dark theme CSS injection for host app compatibility
  • Switch to Geist font with scoped font system in embedded mode
  • Replace hardcoded font sizes with semantic font scale tokens (text-label, text-caption, etc.)
  • Clean up QueryEditor toolbar — remove Quick Actions label, use Shadcn Button components
  • Bump version to 0.9.12

Test plan

  • bun run lint passes
  • bun run test passes (unit + API + integration + hooks + components)
  • bun run build passes (Next.js production build)
  • bun run build:lib generates dist/ correctly
  • Platform can import @libredb/studio/workspace and render StudioWorkspace
  • Verify toolbar buttons display correctly in both standalone and embedded modes

🤖 Generated with Claude Code

cevheri and others added 22 commits March 26, 2026 13:56
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Composes useConnectionAdapter, useQueryAdapter, and useTabManager hooks
with existing Studio UI components to provide an embeddable IDE experience
for the platform integration. Removes standalone headers, connection
management modals, and command palette; gates optional features (AI,
charts, code generator, test data, schema diagram, data import) behind
WorkspaceFeatures flags.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…cification

- Added `tsconfig.lib.json` for library configuration.
- Updated `bun.lock` to include new dependencies and peer dependencies.
- Created documentation for the StudioWorkspace composite export implementation plan and design specification.
- Introduced new types and hooks for workspace management.
- Enhanced global CSS for improved font scaling in the Studio IDE.
- Refactored QueryEditor for better UI consistency and accessibility.

This commit lays the groundwork for exporting the entire Studio workspace as a composite component, facilitating integration with the platform.
…QueryEditor component

- Added instructions for building the @libredb/studio package after component changes.
- Removed unused "Actions" section from the QueryEditor component for improved UI clarity.
…S entry

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…s and class names

- Renamed test cases in QueryEditor to reflect updated button labels: 'Format', 'Copy', 'Clear', 'Lines', and 'AI'.
- Adjusted assertions to check for new button text and modified keyboard shortcut hint format.
- Updated SnapshotTimeline test to include 'truncate' class in label selection for accurate rendering checks.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
74.4% Coverage on New Code (required ≥ 80%)
3.2% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@cevheri cevheri merged commit fe40158 into main Mar 26, 2026
8 of 9 checks passed
@cevheri cevheri deleted the feat/studio-workspace-export branch March 26, 2026 20:29
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.

1 participant