Skip to content

Add Rohas Workbench - Next.js Dashboard for Local Development#5

Merged
sophatvathana merged 3 commits intomainfrom
feat/workbench-ui
Nov 29, 2025
Merged

Add Rohas Workbench - Next.js Dashboard for Local Development#5
sophatvathana merged 3 commits intomainfrom
feat/workbench-ui

Conversation

@sophatvathana
Copy link
Copy Markdown
Contributor

Overview

This PR introduces Rohas Workbench, a modern Next.js dashboard that provides a visual interface for managing and exploring Rohas projects. The workbench automatically detects and parses local schemas, handlers, and workflows without requiring a backend service.

Features

🎨 Modern UI

  • Built with Next.js 16, React 19, and App Router
  • shadcn/ui component library for consistent, accessible UI
  • Dark/light mode support via next-themes
  • Responsive design with Tailwind CSS

📊 Dashboard Pages

  • Overview: Project health and statistics
  • Schemas: Browse and explore schema definitions
  • Schema Graph: Visual representation of schema relationships
  • Workflows: Interactive workflow viewer
  • Tracing: Schema-derived trace explorer
  • CLI: Command-line interface integration
  • Settings: Workbench configuration

🔧 Developer Experience

  • Zero-config setup - automatically detects config/rohas.toml
  • Real-time updates - reads directly from disk on every request
  • Offline-first - no network calls required
  • Fast feedback loop with local state management

Technical Details

Stack

  • Next.js 16 / React 19 (App Router)
  • Tailwind CSS 3.4 + shadcn/ui primitives
  • Zustand for state management
  • TOML parser for reading Cargo metadata

Project Structure

workbench/
├── src/
│   ├── app/(workbench)/     # Dashboard routes
│   ├── components/
│   │   ├── ui/              # Reusable shadcn components
│   │   └── workbench/       # Domain-specific widgets
│   ├── lib/                 # Filesystem helpers and utilities
│   └── stores/              # Zustand state management

Integration

  • Added workbench configuration section to rohas.toml
  • Enhanced State class with structured logging support
  • Updated example project to demonstrate logging capabilities

Usage

cd workbench
pnpm install
pnpm dev

Visit http://localhost:3000 to view the dashboard.

Run from rohas

cd generated_project
rohas dev --workbench

Visit http://localhost:4001 to view the dashboard.

Changes

  • ✅ Initialized Next.js project with TypeScript and Tailwind
  • ✅ Implemented 48 UI components and pages
  • ✅ Added project root detection and filesystem parsing
  • ✅ Integrated with rohas.toml configuration
  • ✅ Added structured logging to State class
  • ✅ Updated .gitignore for workbench build artifacts

- Set up Next.js 16 with React 19 and App Router
- Configure Tailwind CSS and shadcn/ui
- Add TypeScript, ESLint, and PostCSS configuration
- Update root .gitignore for workbench build artifacts
- Add workbench layout with sidebar navigation
- Implement overview, schemas, schema graph, workflows, tracing, CLI, and settings pages
- Create reusable UI components (button, card, tabs, table, etc.)
- Add workbench-specific components (sidebar, header, schema browser, trace explorer)
- Set up Zustand store for cross-route state management
- Add theme provider with dark/light mode support
- Add workbench configuration section to rohas.toml
- Enable DailyCleanup cron job in example schema
- Add structured logging support to State class with Logger
- Update test handler to demonstrate logging capabilities
- Complete workbench styling and root layout setup
@sophatvathana sophatvathana merged commit 4bdafb1 into main Nov 29, 2025
5 checks passed
@sophatvathana sophatvathana deleted the feat/workbench-ui branch November 29, 2025 09:24
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