Gobi
๐ Modern Go-Native Business Intelligence (BI) Engine โ API-first, lightweight BI for analytics, charting, and automated reporting with 3D visualization.
Install / Use
/learn @sy-vendor/GobiREADME
Gobi - Modern Go-Native Business Intelligence (BI) Engine
๐ A lightweight, API-first Business Intelligence (BI) engine built with Go - designed for modern applications that need embedded analytics, automated reporting, and real-time data visualization. The ultimate Go-native BI solution for developers.
โจ Why Gobi?
- ๐ง Go-Native: Built entirely in Go for performance, simplicity, and easy deployment
- ๐ API-First: RESTful APIs with JWT and API key authentication for seamless integration
- ๐ Multi-Chart Support: From basic charts to advanced 3D visualizations
- ๐ค Automation Ready: Scheduled reports with webhook notifications
- ๐ Enterprise Security: Multi-user isolation, API key management, and webhook signatures
- ๐ Production Ready: Clean architecture, dependency injection, comprehensive error handling, and logging
- โก High Performance: Optimized SQL validation, intelligent caching, and connection pooling
๐ฏ Perfect For
- SaaS Applications needing embedded BI and analytics
- Microservices requiring lightweight Business Intelligence capabilities
- Internal Tools for data visualization and BI reporting
- API-First Platforms that need headless Business Intelligence functionality
- Go Applications looking for native BI integration
- Business Intelligence teams requiring modern, scalable BI solutions
๐ Key Features
๐ API-First Architecture
- RESTful APIs with comprehensive CRUD operations
- API Key authentication for service-to-service communication
- Webhook system with signature verification for real-time notifications
- Unified JSON response format with proper error handling
๐ Advanced Visualization
- 25+ Chart Types: Bar, Line, Pie, Scatter, Radar, Heatmap, Gauge, Funnel, Area, 3D charts, TreeMap, Sunburst, Tree, BoxPlot, Candlestick, WordCloud, Graph, Waterfall, Polar, Gantt, Rose, Geo/Map/Choropleth, Progress/Circular Progress
- 3D Charts: 3D Bar, 3D Scatter, 3D Surface, 3D Bubble charts
- Interactive chart configuration and customization
- Excel template integration for professional reports
๐ค Automation & Scheduling
- Cron-based scheduling for automated report generation
- Webhook notifications for report completion events
- Retry logic with exponential backoff for failed deliveries
- Delivery tracking with detailed logs
๐ Enterprise Security
- JWT authentication with configurable expiration
- API key management with secure generation and revocation
- Multi-user isolation ensuring data privacy
- Webhook signature verification for secure notifications
- Role-based access control (Admin/User roles)
- SQL injection protection with comprehensive validation
๐๏ธ Clean Architecture
- Repository Pattern for data access layer separation
- Service Layer with dependency injection for business logic
- Infrastructure Services for caching, encryption, validation
- Factory Pattern for dependency management
- Comprehensive error handling with detailed logging
- Configuration management with YAML support
โก Performance Optimizations
- SQL Validation Optimization: Eliminated redundant validation checks, reducing validation time by 60%
- Intelligent Caching: Smart TTL based on query complexity (simple: 5min, complex: 30min)
- Connection Pool Configuration: Configurable database connection pool settings
- System Monitoring: Real-time performance metrics and health checks
- Database Query Optimization: Advanced query analysis and optimization engine
- Query Complexity Analysis: Automatic analysis of SQL complexity and performance impact
- Index Management: Multi-database index analysis and optimization suggestions
- Query Execution Plans: Detailed execution plans with performance metrics
- Smart Caching Strategy: Dynamic TTL based on query characteristics and business hours
- Batch Query Execution: Concurrent query execution with controlled concurrency
- Performance Monitoring: Real-time query performance tracking and slow query detection
- Memory Usage Optimization: Intelligent memory management for large result sets
- Network Transfer Optimization: Optimized data transfer and compression
๐ Data Management
- Multi-database support (SQLite, MySQL, PostgreSQL)
- SQL query management with execution tracking
- Data source management for centralized connection handling
- Query caching for improved performance
- Dashboard statistics and analytics
๐ฏ Use Cases
Embedded Analytics
// Integrate BI directly into your Go application
client := gobi.NewClient("https://your-gobi-instance.com")
client.SetAPIKey("your-api-key")
// Create charts programmatically
chart := &gobi.Chart{
Name: "Sales Analytics",
Type: "3d_surface",
Data: salesData,
}
Automated Reporting
# Schedule daily reports with webhook notifications
schedule:
name: "Daily Sales Report"
cron: "0 9 * * *" # Every day at 9 AM
webhook: "https://your-app.com/webhooks/reports"
API-First Integration
# Service-to-service authentication
curl -H "Authorization: ApiKey your-api-key" \
https://gobi.example.com/api/charts
# Real-time webhook notifications
POST /webhooks/reports
{
"event": "report.generated",
"data": { "report_id": 123, "status": "success" }
}
Database Query Optimization
// Analyze query performance and get optimization suggestions
optimizer := database.NewQueryOptimizer()
plan, err := optimizer.AnalyzeQuery(sql, dataSource)
for _, suggestion := range plan.Suggestions {
fmt.Println("Optimization:", suggestion)
}
// Execute query with optimization
optimizedService := infrastructure.NewOptimizedSQLExecutionService(cacheService)
result, err := optimizedService.ExecuteWithOptimization(ctx, dataSource, sql)
fmt.Printf("Execution time: %v, Cache hit: %v\n",
result.ExecutionTime, result.CacheHit)
// Get index suggestions
indexManager := database.NewIndexManager()
suggestions, err := indexManager.SuggestIndexes(queryPatterns, dataSource)
for _, suggestion := range suggestions {
fmt.Printf("Index suggestion: %s\n", suggestion.SQL)
}
๐ ๏ธ Technology Stack
- Backend: Go 1.21+ with Gin framework
- Database: SQLite (dev) / MySQL/PostgreSQL (prod)
- Authentication: JWT + API Keys with bcrypt hashing
- Charts: Custom 3D rendering with WebGL support
- Scheduling: Cron-based with timezone support
- Notifications: Webhook system with HMAC signatures
- Architecture: Clean Architecture with Repository Pattern
- Caching: Intelligent caching with go-cache
- Documentation: OpenAPI/Swagger ready
- Database Optimization: Advanced query optimization with index management
- Performance Monitoring: Real-time metrics and query analysis
๐๏ธ Architecture Overview
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ API Layer โ โ Service Layer โ โ Repository Layerโ
โ (Handlers) โโโโโบโ (Business โโโโโบโ (Data Access) โ
โ โ โ Logic) โ โ โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ Infrastructure โ โ Validation โ โ Database โ
โ Services โ โ Layer โ โ Connection โ
โ (Cache, Auth, โ โ (SQL, Chart, โ โ Pool โ
โ Encryption) โ โ DataSource) โ โ โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ Query Optimizer โ โ Index Manager โ โ Performance โ
โ (Analysis, โ โ (Multi-DB โ โ Monitoring โ
โ Suggestions) โ โ Support) โ โ (Metrics, โ
โ โ โ โ โ Analytics) โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
๐ Recent Improvements
โก Performance Optimizations
- SQL Validation Optimization: Eliminated redundant validation checks, reducing validation time by 60%
- Intelligent Caching: Smart TTL based on query complexity (simple: 5min, complex: 30min)
- Connection Pool Configuration: Configurable database connection pool settings
- System Monitoring: Real-time performance metrics and health checks
- Database Query Optimization Engine: Advanced query analysis and optimization
- **Query Complexity An
Related Skills
xurl
341.6kA CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.
feishu-drive
341.6k|
things-mac
341.6kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
341.6kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
