Skip to content

Commit d476e1e

Browse files
committed
feat(ui): enhance dashboard GUI with dark mode and glassmorphism
1 parent 2b892f6 commit d476e1e

File tree

8 files changed

+255
-150
lines changed

8 files changed

+255
-150
lines changed

.pipelinex/benchmark-registry.json

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
[
2+
{
3+
"id": "94212360-0c64-4e06-a1fb-4079d49509a7",
4+
"schema_version": 1,
5+
"submitted_at": "2026-02-10T17:04:57.558Z",
6+
"source": "dashboard-live",
7+
"provider": "github-actions",
8+
"job_bucket": "1-5",
9+
"step_bucket": "1-20",
10+
"job_count": 5,
11+
"step_count": 20,
12+
"max_parallelism": 4,
13+
"finding_count": 18,
14+
"critical_count": 3,
15+
"high_count": 4,
16+
"medium_count": 7,
17+
"total_duration_secs": 719,
18+
"optimized_duration_secs": 143.8,
19+
"improvement_pct": 80,
20+
"health_score": 49.7
21+
}
22+
]

README.md

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,14 @@ An intelligent CI/CD analysis platform that watches your pipelines, identifies e
112112

113113
![PipelineX Dashboard](assets/dashboard-preview.png)
114114

115+
### Interactive Visualization
116+
117+
![DAG Explorer](assets/dag-explorer.png)
118+
119+
### Deep Cost Analysis
120+
121+
![Trends and Cost Center](assets/trends-cost.png)
122+
115123
---
116124

117125
### Basic Usage
@@ -575,23 +583,23 @@ $ pipelinex simulate .github/workflows/ci.yml --runs 1000
575583

576584
## 📋 Commands
577585

578-
| Command | Description | Example |
579-
| -------------- | ------------------------------------------ | ---------------------------------------------------------------- |
580-
| `analyze` | Analyze pipelines for bottlenecks | `pipelinex analyze .github/workflows/ci.yml` |
581-
| `optimize` | Generate optimized config | `pipelinex optimize ci.yml -o ci-opt.yml` |
582-
| `diff` | Show changes between current and optimized | `pipelinex diff ci.yml` |
583-
| `apply` | Apply optimization & create PR (one-click) | `pipelinex apply .github/workflows/ci.yml --repo owner/repo` |
584-
| `cost` | Estimate CI/CD costs and savings | `pipelinex cost .github/workflows/ --team-size 10` |
585-
| `graph` | Visualize pipeline DAG | `pipelinex graph ci.yml --format mermaid` |
586-
| `simulate` | Monte Carlo simulation | `pipelinex simulate ci.yml --runs 1000` |
587-
| `docker` | Analyze Dockerfiles | `pipelinex docker Dockerfile --optimize` |
588-
| `select-tests` | Smart test selection | `pipelinex select-tests HEAD~1 HEAD` |
589-
| `flaky` | Detect flaky tests | `pipelinex flaky test-results/*.xml` |
590-
| `history` | Analyze workflow run history | `pipelinex history --repo org/repo --workflow ci.yml --runs 100` |
586+
| Command | Description | Example |
587+
| -------------- | ------------------------------------------ | ----------------------------------------------------------------------------- |
588+
| `analyze` | Analyze pipelines for bottlenecks | `pipelinex analyze .github/workflows/ci.yml` |
589+
| `optimize` | Generate optimized config | `pipelinex optimize ci.yml -o ci-opt.yml` |
590+
| `diff` | Show changes between current and optimized | `pipelinex diff ci.yml` |
591+
| `apply` | Apply optimization & create PR (one-click) | `pipelinex apply .github/workflows/ci.yml --repo owner/repo` |
592+
| `cost` | Estimate CI/CD costs and savings | `pipelinex cost .github/workflows/ --team-size 10` |
593+
| `graph` | Visualize pipeline DAG | `pipelinex graph ci.yml --format mermaid` |
594+
| `simulate` | Monte Carlo simulation | `pipelinex simulate ci.yml --runs 1000` |
595+
| `docker` | Analyze Dockerfiles | `pipelinex docker Dockerfile --optimize` |
596+
| `select-tests` | Smart test selection | `pipelinex select-tests HEAD~1 HEAD` |
597+
| `flaky` | Detect flaky tests | `pipelinex flaky test-results/*.xml` |
598+
| `history` | Analyze workflow run history | `pipelinex history --repo org/repo --workflow ci.yml --runs 100` |
591599
| `migrate` | Migrate CI provider config | `pipelinex migrate .github/workflows/ci.yml --to gitlab-ci -o .gitlab-ci.yml` |
592-
| `multi-repo` | Analyze cross-repo orchestration patterns | `pipelinex multi-repo /path/to/repos --format json` |
593-
| `right-size` | Recommend right-sized CI runners | `pipelinex right-size .github/workflows/ --format json` |
594-
| `plugins` | Plugin scaffold/list | `pipelinex plugins scaffold .pipelinex/plugins.json` |
600+
| `multi-repo` | Analyze cross-repo orchestration patterns | `pipelinex multi-repo /path/to/repos --format json` |
601+
| `right-size` | Recommend right-sized CI runners | `pipelinex right-size .github/workflows/ --format json` |
602+
| `plugins` | Plugin scaffold/list | `pipelinex plugins scaffold .pipelinex/plugins.json` |
595603

596604
### Output Formats
597605

assets/dag-explorer.png

125 KB
Loading

assets/dashboard-preview.png

55.6 KB
Loading

assets/trends-cost.png

152 KB
Loading

dashboard/app/globals.css

Lines changed: 53 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,20 @@
11
@import "tailwindcss";
22

33
:root {
4-
--bg-deep: #07090f;
5-
--bg-mid: #0d111d;
6-
--ink: #ececf0;
7-
--muted: #8d95a7;
8-
--accent: #22d3ee;
4+
/* Richer, deeper dark mode palette */
5+
--bg-deep: #050505; /* Almost black for depth */
6+
--bg-mid: #0a0a0b; /* Slightly lighter for cards */
7+
--bg-surface: #121214; /* Elevated surfaces */
8+
9+
--ink-primary: #f4f4f5; /* Zinc-100 */
10+
--ink-secondary: #a1a1aa; /* Zinc-400 */
11+
--ink-tertiary: #52525b; /* Zinc-600 */
12+
13+
--accent-primary: #06b6d4; /* Cyan-500 */
14+
--accent-glow: rgba(6, 182, 212, 0.15);
15+
16+
--border-subtle: #27272a; /* Zinc-800 */
17+
--border-highlight: #3f3f46; /* Zinc-700 */
918
}
1019

1120
@theme inline {
@@ -15,19 +24,51 @@
1524

1625
body {
1726
min-height: 100vh;
18-
color: var(--ink);
19-
background:
20-
radial-gradient(1200px 700px at 20% -20%, rgba(34, 211, 238, 0.14), transparent 65%),
21-
radial-gradient(900px 560px at 110% 0%, rgba(244, 114, 182, 0.12), transparent 65%),
22-
linear-gradient(180deg, var(--bg-mid) 0%, var(--bg-deep) 70%);
27+
color: var(--ink-primary);
28+
background-color: var(--bg-deep);
29+
/* More subtle, professional gradient mesh */
30+
background-image:
31+
radial-gradient(
32+
circle at 15% 0%,
33+
rgba(6, 182, 212, 0.08) 0%,
34+
transparent 40%
35+
),
36+
radial-gradient(
37+
circle at 85% 100%,
38+
rgba(168, 85, 247, 0.05) 0%,
39+
transparent 40%
40+
);
2341
font-family: var(--font-space-grotesk), sans-serif;
42+
-webkit-font-smoothing: antialiased;
43+
-moz-osx-font-smoothing: grayscale;
2444
}
2545

26-
* {
27-
border-color: #27272a;
46+
/* Scrollbar styling for a cleaner look */
47+
::-webkit-scrollbar {
48+
width: 8px;
49+
height: 8px;
50+
}
51+
::-webkit-scrollbar-track {
52+
background: var(--bg-deep);
53+
}
54+
::-webkit-scrollbar-thumb {
55+
background: var(--border-subtle);
56+
border-radius: 4px;
57+
}
58+
::-webkit-scrollbar-thumb:hover {
59+
background: var(--border-highlight);
2860
}
2961

62+
/* Global utility enhancements */
3063
code,
3164
pre {
3265
font-family: var(--font-ibm-plex-mono), monospace;
3366
}
67+
68+
/* Glassmorphism utility */
69+
.glass-panel {
70+
background: rgba(18, 18, 20, 0.6);
71+
backdrop-filter: blur(12px);
72+
-webkit-backdrop-filter: blur(12px);
73+
border: 1px solid rgba(255, 255, 255, 0.05);
74+
}

0 commit comments

Comments
 (0)