Skip to content

Commit 9764ed9

Browse files
committed
docs: add project roadmap with planned features
Add comprehensive ROADMAP.md documenting planned features and improvements: High Priority: - Exporter status dashboard with badges and real-time metrics - Docker multi-architecture support (ARM64) using buildx Medium Priority: - Repository mirrors for faster downloads - Enhanced search and filtering in portal - Metrics and analytics tracking Future Ideas: - Custom exporter templates - Enhanced security features - Auto-healing builds - Interactive documentation - Community features Also includes completed features section showing recent milestones.
1 parent 5b26abc commit 9764ed9

File tree

1 file changed

+191
-0
lines changed

1 file changed

+191
-0
lines changed

ROADMAP.md

Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
1+
# 🗺️ Roadmap - Monitoring Hub
2+
3+
This document outlines planned features and improvements for the Monitoring Hub project.
4+
5+
## 🔥 High Priority
6+
7+
### 📊 Exporter Status Dashboard
8+
9+
**Goal**: Provide real-time visibility into build status for all exporters
10+
11+
**Components**:
12+
- [ ] Generate status badges JSON for shields.io endpoints
13+
- Total exporters badge
14+
- Success rate badge
15+
- RPM/DEB/Docker status badges
16+
- Last build timestamp badge
17+
- [ ] Create `STATUS.md` with per-exporter build status
18+
- Individual badges per exporter
19+
- Distribution and architecture coverage
20+
- Build timestamps and versions
21+
- [ ] Add status tab to web portal
22+
- Interactive status dashboard
23+
- Real-time metrics (success/failed/pending)
24+
- Filterable status table
25+
- Build history visualization
26+
- [ ] Implement aggregate-status workflow
27+
- Triggered after Release and Auto Release
28+
- Reads all `catalog/*.json` from gh-pages
29+
- Generates global metrics and badges
30+
- Publishes to `badges/*.json` and `STATUS.md`
31+
32+
**Benefits**:
33+
- Quick overview of build health
34+
- Easy identification of failing builds
35+
- Better visibility for users and contributors
36+
37+
**Implementation Notes**:
38+
- Use shields.io endpoint format for badges
39+
- Merge remote catalog data to avoid false status on partial builds
40+
- Auto-update after each release workflow
41+
42+
---
43+
44+
### 🐳 Docker Multi-Architecture Support (ARM64)
45+
46+
**Goal**: Build and publish ARM64 Docker images alongside AMD64
47+
48+
**Current State**:
49+
- ✅ RPM: x86_64 + aarch64 (with QEMU)
50+
- ✅ DEB: amd64 + arm64 (with QEMU)
51+
- ❌ Docker: amd64 only
52+
53+
**Proposed Approach**: Docker Buildx Multi-Platform (Option 1)
54+
55+
**Implementation**:
56+
- [ ] Add `docker/setup-buildx-action@v3` to workflow
57+
- [ ] Use `docker buildx build --platform linux/amd64,linux/arm64`
58+
- [ ] Generate multi-arch manifest automatically
59+
- [ ] Update documentation for ARM64 usage
60+
61+
**Benefits**:
62+
- Native ARM64 support (Raspberry Pi, AWS Graviton, Apple Silicon)
63+
- Single `docker pull` command auto-selects correct architecture
64+
- Standard industry approach (matches official Docker images)
65+
66+
**Trade-offs**:
67+
- Build time: ~2x slower per exporter (QEMU emulation)
68+
- Storage: ~2x GHCR space (acceptable: 10GB vs 50GB free tier)
69+
- No additional GitHub Actions cost (uses QEMU, not ARM runners)
70+
71+
**Estimated Impact**:
72+
- Build time: +2-3 hours total (parallelized across 35 exporters)
73+
- GHCR storage: ~10GB total (well within free tier)
74+
75+
---
76+
77+
## 🚀 Medium Priority
78+
79+
### 📦 Repository Mirrors
80+
81+
**Goal**: Provide faster package downloads via CDN/mirrors
82+
83+
**Options**:
84+
- [ ] CloudFlare R2 mirror for RPM/DEB packages
85+
- [ ] DigitalOcean Spaces mirror
86+
- [ ] Add mirror selection to repository configuration
87+
88+
**Benefits**:
89+
- Faster downloads for international users
90+
- Reduced load on GitHub Releases
91+
- Better availability
92+
93+
---
94+
95+
### 🔍 Enhanced Search and Filtering
96+
97+
**Goal**: Improve exporter discovery in web portal
98+
99+
**Features**:
100+
- [ ] Advanced search filters (category, status, architecture)
101+
- [ ] Tag-based filtering (monitoring, database, web, etc.)
102+
- [ ] Version comparison view
103+
- [ ] Dependency tree visualization
104+
105+
---
106+
107+
### 📈 Metrics and Analytics
108+
109+
**Goal**: Track usage and adoption metrics
110+
111+
**Components**:
112+
- [ ] Download statistics per exporter
113+
- [ ] Popular exporters dashboard
114+
- [ ] Build time trends
115+
- [ ] Failure rate tracking
116+
117+
**Privacy**: All metrics would be aggregated and anonymous.
118+
119+
---
120+
121+
## 🔮 Future Ideas
122+
123+
### 🎨 Custom Exporter Templates
124+
125+
Allow users to create custom exporter templates for specific use cases:
126+
- Systemd service templates with custom options
127+
- Docker compose examples
128+
- Kubernetes manifests
129+
- Prometheus scrape configs
130+
131+
### 🔐 Enhanced Security
132+
133+
- [ ] Automated CVE scanning results in portal
134+
- [ ] Security advisories for affected exporters
135+
- [ ] SBOM (Software Bill of Materials) generation
136+
- [ ] Signature verification documentation
137+
138+
### 🤖 Auto-Healing Builds
139+
140+
- [ ] Automatic retry of failed builds
141+
- [ ] Smart failure detection and categorization
142+
- [ ] Notification system for persistent failures
143+
144+
### 📝 Interactive Documentation
145+
146+
- [ ] Live YAML validator for manifests
147+
- [ ] Interactive manifest builder
148+
- [ ] Architecture decision records (ADRs)
149+
150+
### 🌐 Community Features
151+
152+
- [ ] User-contributed exporter suggestions
153+
- [ ] Voting system for new exporters
154+
- [ ] Community showcase (how are you using these exporters?)
155+
156+
---
157+
158+
## 📋 Completed Features
159+
160+
### ✅ v0.18.0 - Catalog Fragmentation (2024-02-10)
161+
162+
- Fragmented catalog structure (`catalog/index.json` + per-exporter files)
163+
- 54x smaller state manager downloads (4KB vs 217KB)
164+
- Incremental publishing support
165+
- Backward compatible legacy `catalog.json`
166+
167+
### ✅ v0.17.0 - DEB Package Support
168+
169+
- Full Debian/Ubuntu package support
170+
- GPG signing for DEB packages
171+
- Multi-distribution support (Ubuntu 22.04/24.04, Debian 12/13)
172+
173+
### ✅ v0.16.0 - Intelligent Build Routing
174+
175+
- Automatic version detection and incremental builds
176+
- Parallel build matrix for RPM/DEB/Docker
177+
- Optimized CI/CD workflows
178+
179+
---
180+
181+
## 🤝 Contributing
182+
183+
Have ideas for new features? We'd love to hear them!
184+
185+
1. Check if the feature is already listed here
186+
2. Open a [Feature Request](https://github.com/SckyzO/monitoring-hub/issues/new/choose)
187+
3. Join the [Discussion](https://github.com/SckyzO/monitoring-hub/discussions)
188+
189+
---
190+
191+
**Last Updated**: 2024-02-10

0 commit comments

Comments
 (0)