Skip to content

feat(ui): add React-based admin dashboard#5855

Merged
gustavosbarreto merged 1 commit intomasterfrom
feat/ui-react
Feb 21, 2026
Merged

feat(ui): add React-based admin dashboard#5855
gustavosbarreto merged 1 commit intomasterfrom
feat/ui-react

Conversation

@gustavosbarreto
Copy link
Member

@gustavosbarreto gustavosbarreto commented Feb 20, 2026

Summary

New admin UI built with React, TypeScript, Vite, Zustand, and Tailwind CSS. Covers all ShellHub Community Edition features. Served at /ui-react while the migration is in progress.

The Vue UI (ui/) is now frozen — no new features or modifications. A friendly reminder was added to its interface to make sure nobody forgets. All UI effort moves to ui-react from here on.

The monorepo is structured to also host the website, docs, and blog as separate apps in the future.

Screenshots

Before (Vue)

image image image image

After (React)

image image image image

What's included

  • Monorepo setup — npm workspaces with shared design system (packages/design-system)
  • Admin app — devices, sessions, firewall rules, public keys, team management, web endpoints, settings, and SSH banner editor
  • Web terminal with theme support
  • Command palette, connectivity detection, and namespace management
  • Docker and nginx configuration for dev and production
  • Runtime config injection via gen-config.sh

Test plan

  • Run ./bin/docker-compose up and access /ui-react
  • Login, navigate all pages, verify CRUD operations
  • Test web terminal connection to a device
  • Verify Vue UI at / still works and shows the freeze notice

@otavio
Copy link
Member

otavio commented Feb 21, 2026

/review

New admin UI built with React, TypeScript, Vite, Zustand, and
Tailwind CSS. Covers all ShellHub Community Edition features.
Served at /ui-react while the migration is in progress.

The Vue UI (ui/) is now frozen — no new features or modifications.
A friendly reminder was added to its interface to make sure
nobody forgets. All UI effort moves to ui-react from here on.

The monorepo is structured to also host the website, docs, and
blog as separate apps in the future.

Includes:
- Monorepo setup (npm workspaces) with shared design system
- Full admin app: devices, sessions, firewall rules, public keys,
  team management, web endpoints, settings, and SSH banner editor
- Web terminal with theme support
- Command palette, connectivity detection, and namespace management
- Docker and nginx configuration for dev and production
- Runtime config injection via gen-config.sh
@gustavosbarreto
Copy link
Member Author

/review

@gustavosbarreto gustavosbarreto merged commit b820e89 into master Feb 21, 2026
15 checks passed
@gustavosbarreto gustavosbarreto deleted the feat/ui-react branch February 21, 2026 12:54
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.

2 participants