feat: initial schemas-app implementation

- Add Nuxt 4 application with Vuetify UI framework
- Implement GraphQL schema registry management interface
- Add Apollo Client integration with Auth0 authentication
- Create organization and API key management
- Add schema and ref browsing capabilities
- Implement organization switcher for multi-org users
- Add delete functionality for organizations and API keys
- Create Kubernetes deployment descriptors
- Add Docker configuration with nginx

Features:
- Dashboard with organization overview
- Schema browsing by ref with supergraph viewing
- Ref management with schema details
- Settings page for organizations and API keys
- User list per organization with provider icons
- Admin-only organization creation
- Delete confirmations with warnings

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-22 16:42:35 +01:00
commit 072e1b10f1
41 changed files with 25557 additions and 0 deletions
+95
View File
@@ -0,0 +1,95 @@
# Unbound Schemas - Web UI
A Nuxt 4 application with Vuetify for viewing and managing federated GraphQL schemas.
## Features
- 📊 Dashboard with schema statistics and recent updates
- 📝 View all published schemas by ref (production, staging, etc.)
- 🔍 Search and filter schemas
- 📄 View schema SDL (Schema Definition Language)
- 📥 Download and copy schemas
- 🌳 View merged supergraphs for each ref
- 🎨 Modern Material Design UI with Vuetify
## Environment Variables
Create a `.env` file in the root directory:
```bash
NUXT_PUBLIC_API_BASE=http://localhost:8080
```
The API base URL points to your GraphQL Schema Registry backend service.
## Setup
Make sure to install dependencies:
```bash
# npm
npm install
# pnpm
pnpm install
# yarn
yarn install
# bun
bun install
```
## Development Server
Start the development server on `http://localhost:3500`:
```bash
# npm
npm run dev
# pnpm
pnpm dev
# yarn
yarn dev
# bun
bun run dev
```
## Production
Build the application for production:
```bash
# npm
npm run build
# pnpm
pnpm build
# yarn
yarn build
# bun
bun run build
```
Locally preview production build:
```bash
# npm
npm run preview
# pnpm
pnpm preview
# yarn
yarn preview
# bun
bun run preview
```
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.