Skip to content

monkdbofficial/workbench

Repository files navigation

MonkDB Workbench - Unified Multi-Database Platform

Enterprise-grade database management system supporting 8+ database types with SQL protocol and OLAP analytics

MonkDB Workbench Next.js TypeScript Tailwind CSS

🎯 Overview

MonkDB Workbench is a professional, unified database management platform that supports ALL major database types in a single interface. Built with modern web technologies, it provides an enterprise-grade experience similar to Databricks, MongoDB Compass, and ClickHouse combined.

🚀 Supported Database Types

Type Icon Protocol Query Language Use Case
Document 📄 MongoDB Protocol MQL Flexible JSON documents
Vector 🧠 Vector Search API Similarity Search AI/ML embeddings
Time Series 📈 InfluxDB Protocol InfluxQL/Flux Metrics & monitoring
Geospatial 🌍 PostGIS Protocol GeoJSON/WKT Location data
Tabular 🗂️ PostgreSQL Protocol SQL Relational tables
OLAP 📊 ClickHouse Protocol SQL (OLAP) Analytics
Blob 💾 S3 Compatible API REST API Object storage
Full-Text 🔍 Elasticsearch Protocol Query DSL Text search

✨ Key Features

🎨 Professional UI/UX

  • Apache ECharts Integration - Beautiful, interactive data visualizations
  • Dark/Light Theme - Professional theme switching with persistence
  • Responsive Design - Works seamlessly on all screen sizes
  • Real-time Updates - Live monitoring charts that update every 2 seconds

📊 Data Management

  • Unified Data Browser - Browse all database types in one interface
  • Advanced Filtering - Search, filter, and paginate through large datasets
  • Multi-select Operations - Bulk operations on selected documents
  • Schema Visualization - Understand your data structure at a glance

⚡ Query Capabilities

  • MongoDB Query Editor - Execute real MQL queries with syntax support
  • SQL Support - Full SQL protocol for tabular and OLAP databases
  • Vector Similarity Search - AI-powered similarity queries
  • Geospatial Queries - Location-based search and filtering

📈 Monitoring & Analytics

  • Real-time System Metrics - CPU, Memory, Disk I/O, Network monitoring
  • Performance Charts - Annual overview, query performance, collection distribution
  • Alert System - Real-time notifications for important events
  • Query Analytics - Execution time, documents scanned, index usage

🔧 Enterprise Features

  • Multi-database Support - Manage production, development, and staging environments
  • Connection Management - Monitor connection health, uptime, and load
  • Settings & Configuration - Customize editor, notifications, and privacy
  • Export/Import - Data portability across different formats

🛠️ Technology Stack

  • Framework: Next.js 16.0 (React 19)
  • Language: TypeScript 5.0
  • Styling: Tailwind CSS 4.0
  • Charts: Apache ECharts
  • Data: Mock database engine with 850+ realistic documents

📦 Installation

# Install dependencies
npm install

# Run development server
npm run dev

# Build for production
npm run build

# Start production server
npm start

Open http://localhost:3000 to access the workbench.

🗂️ Project Structure

app/
├── components/          # React components
│   ├── charts/         # ECharts visualizations
│   ├── Dashboard.tsx   # Main dashboard
│   ├── DataBrowser.tsx # Document browser
│   ├── QueryEditor.tsx # Query execution
│   ├── UnifiedDataBrowser.tsx  # Multi-type browser
│   └── ...
├── lib/                # Core libraries
│   ├── mockDatabase.ts        # Mock data engine
│   └── databaseTypes.ts       # Type definitions
└── page.tsx            # Main application

🎯 Usage

Browse Different Database Types

  1. Navigate to Database Types in the sidebar
  2. View all 8 supported database types with their capabilities
  3. See real-time statistics for each type

Query Data

  1. Go to Query Editor
  2. Select database and collection
  3. Write your query: db.users.find({ age: { $gt: 25 } })
  4. Click Execute to see results
  5. View execution stats (time, docs scanned, index used)

Unified Data Browser

  1. Click Unified Browser in the sidebar
  2. Filter by database type (or view all)
  3. Select a collection to browse
  4. Search, filter, and paginate through data
  5. View data in tabular format with type-specific rendering

Monitor Performance

  1. Access Monitoring for real-time system metrics
  2. View Dashboard for performance charts and analytics
  3. Check connection status and uptime

🔥 Features Showcase

Vector Database

  • Store and search 128-dimensional embeddings
  • AI/ML integration ready
  • Similarity search capabilities
  • 1000+ vector documents

Time Series

  • 50,000+ metric data points
  • Real-time analytics
  • Downsampling and aggregation
  • Retention policies

Geospatial

  • 5,000+ location points
  • Spatial indexing
  • Distance-based queries
  • Map visualization ready

OLAP Analytics

  • 100,000+ analytical records
  • Columnar storage simulation
  • Real-time aggregations
  • Sub-second query performance

🎨 Visualizations

  • Performance Metrics Chart - Dual-axis line chart with query count and response times
  • Collection Distribution - Donut chart showing data distribution
  • Query Performance - 24-hour bar chart of query response times
  • Real-time System Metrics - Live 4-metric chart (CPU, Memory, Disk, Network)

🔐 Security & Enterprise

  • Role-based access control (UI ready)
  • Audit logging capabilities
  • Encryption support
  • Multi-tenancy ready

🚀 Performance

  • 850+ Documents - Realistic dataset across multiple collections
  • Real Query Execution - Functional query engine with filtering
  • Sub-second Queries - Optimized data access
  • Lazy Loading - Charts loaded dynamically for better performance

📝 License

MIT

🤝 Contributing

Contributions are welcome! This is a demonstration platform showcasing enterprise database management capabilities.


Built with ❤️ for the database community

workbench

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages