You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
***oidc:** allow empty issuer to skip discovery for split-horizon setups ([d722457](https://github.com/crossplane-contrib/crossview/commit/d7224577f8f0d149db3a9f2e7be824667f827b12))
7
+
***relations:** align kind badge and type title across graph and overview ([cc74494](https://github.com/crossplane-contrib/crossview/commit/cc744949f7f364d6395397f0da4ef5b3909e7532))
8
+
***ci:** fix helm-unittest plugin install on Helm 3.13 and document pinning rationale ([3866a05](https://github.com/crossplane-contrib/crossview/commit/3866a05bd7fcaf1c58f2a877d86071f9848ef1ca), [e32a362](https://github.com/crossplane-contrib/crossview/commit/e32a3628e23c572d03f4bb22cf77cd1436ee8d4f))
9
+
10
+
11
+
### Features
12
+
13
+
***relations:** show kind badges and health state on graph nodes and overview tab ([bc0deb1](https://github.com/crossplane-contrib/crossview/commit/bc0deb16a44f4364f24d12fbd96f52ad4f9f8154))
14
+
***frontend:** add ErrorBoundary to prevent full-app crashes ([ae8bb69](https://github.com/crossplane-contrib/crossview/commit/ae8bb69c223639673aa3d4e6384f3889296d6bc2))
15
+
***ui:** add Crossview favicon and switch to icon-only SVG ([52d3a41](https://github.com/crossplane-contrib/crossview/commit/52d3a41cf2a2d79312f8b56f09c7247d8bf50b7a), [3ea3a5c](https://github.com/crossplane-contrib/crossview/commit/3ea3a5cd8f5f2b3d65edc5ec590ce20f3dde2a29))
16
+
17
+
18
+
### Documentation
19
+
20
+
* clarify PostgreSQL is only required for `auth_mode=session` ([8786f18](https://github.com/crossplane-contrib/crossview/commit/8786f188d3076cc3f41ea72e6227d8f6826e1db0))
21
+
***oidc:** trim loader issuer comment and mirror empty-issuer defaults in JS config loader ([2d56b2e](https://github.com/crossplane-contrib/crossview/commit/2d56b2e9a96ab767b0eb4f8aeeac771f6d910228), [88256f5](https://github.com/crossplane-contrib/crossview/commit/88256f5a897f8bf4e68f2db5752503c2f3c63711), [53e9ce3](https://github.com/crossplane-contrib/crossview/commit/53e9ce38d55b0303563ff47094c2098e4f0fcbaf))
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -61,7 +61,7 @@
61
61
62
62
- Node.js 20+ (for frontend development)
63
63
- Go 1.24+ (for backend server)
64
-
- PostgreSQL database (port 8920 by default, or set via `DB_PORT` env var)
64
+
- PostgreSQL database — only required when using `auth_mode: session` (the default). For local development without a database, set `auth_mode: none` in `config/config.yaml` (see `config/examples/config-none.yaml.example`).
65
65
- Kubernetes config file at `~/.kube/config` (or set `KUBECONFIG` env var)
Copy file name to clipboardExpand all lines: docs/GETTING_STARTED.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -69,6 +69,8 @@ docker run -p 3001:3001 \
69
69
ghcr.io/crossplane-contrib/crossview:latest
70
70
```
71
71
72
+
> **Note:** PostgreSQL is only required when using `auth_mode: session` (the default). For local development without a database, copy `config/examples/config-none.yaml.example` to `config/config.yaml` — the backend will skip the database connection entirely.
- Stable core features: real-time resource watching, interactive relationship graphs, **partial multi-cluster support** (full support when running outside Kubernetes via kubeconfig; limited to single cluster when deployed inside via Helm/service account), detailed resource views, OIDC/SAML SSO, Helm chart deployment
10
+
- Latest release: v4.0.0 (June 2026)
10
11
- Actively maintained with frequent updates
11
12
12
-
## Short-term (Next 3–6 months) – v3.6 – v4.x
13
-
Focus: Security hardening, usability improvements, and production readiness
13
+
## Short-term (Next 3–6 months) – v4.x
14
+
**Focus:** Security hardening, real-time experience, usability, and ecosystem integrations
14
15
15
16
-**Fine-grained RBAC permissions**
16
17
Implement Kubernetes-native authorization checks (via SubjectAccessReview API) so users only see/edit resources they are allowed to access. Support Crossplane-specific verbs (e.g., view compositions, approve claims).
17
18
18
-
-**Customizable dashboard**
19
-
Allow users to create personalized views: rearrange widgets, pin favorite resources/clusters, create custom filters/queries, and save dashboard layouts per user or team.
20
-
21
-
-**Automatic user role sync from Identity Provider (IDP) when SSO is enabled**
22
-
When using OIDC/SAML, automatically map IDP groups/roles/claims to CrossView permissions or Kubernetes RBAC bindings. Support common providers (Keycloak, Okta, Auth0, Azure AD) with configurable mapping rules.
19
+
-**Improved resource watching**
20
+
Significantly enhance real-time watching: better performance on large clusters, smarter event filtering, improved reconnection logic, and reduced latency.
23
21
24
22
-**Improved search and filtering**
25
-
Advanced full-text search across all resource fields, saved searches, and quick filters (e.g., by status, provider, composition name).
23
+
Advanced full-text search across all resource fields, saved searches, quick filters (by status, provider, composition, cluster), and cross-cluster search.
26
24
27
25
-**Events & audit log viewer**
28
-
Dedicated tab for browsing Kubernetes events and Crossplane reconciliation events with filtering, timestamps, and correlation to resources.
26
+
Dedicated tab for browsing Kubernetes events and Crossplane reconciliation events with filtering, timestamps, and direct correlation to resources.
Full WCAG compliance checks, keyboard navigation, screen reader support.
28
+
-**Full multi-cluster support (in-cluster)**
29
+
Enable true multi-cluster management when CrossView is deployed inside Kubernetes (via Helm). Support loading multiple kubeconfigs, using external cluster credentials/secrets, unified views, easy context switching, and cluster grouping — removing the current limitation of single-cluster service-account access.
32
30
33
-
## Medium-term (6–12 months) – v4.x – v5.x
34
-
Focus: Deeper Crossplane integration, observability, and extensibility
31
+
-**Native Headlamp Plugin**
32
+
Develop a native Headlamp plugin (see [crossview-headlamp](https://github.com/MoeidHeidari/crossview-headlamp)) that integrates the CrossView UI into Headlamp while using **CrossView’s own backend**. The plugin will connect to the CrossView backend service instead of relying on Headlamp’s backend, providing a seamless experience within Headlamp’s interface while leveraging CrossView’s full capabilities (real-time watching, graphs, etc.).
35
33
36
-
-**Composition & claim workflow enhancements**
37
-
Visual editor for creating/editing Compositions and Claims (with YAML preview and validation), dry-run previews, and one-click apply.
34
+
## Medium-term (6–12 months) – v4.x – v5.x
35
+
**Focus:** Deeper Crossplane integration, visibility, and GitOps alignment
38
36
39
-
-**Provider & managed resource health dashboard**
40
-
Aggregated health overview per provider (e.g., AWS, GCP, Azure), showing unhealthy resources, drift detection alerts, and quick actions.
37
+
-**Resource diff & history viewer (YAML support)**
38
+
Side-by-side and unified YAML diff, generation-based history, change attribution, and drift visualization.
41
39
42
-
-**Multi-tenancy & team workspaces**
43
-
Namespace/project-based isolation, team-specific dashboards, and resource quotas visibility.
40
+
-**GitOps integration**
41
+
Show Git commit links for managed resources and claims via annotations. Basic drift detection against Git source.
44
42
45
-
-**Alerting & notifications**
46
-
Integrate with common tools (Slack, PagerDuty, email) for critical events (e.g., reconciliation failures, resource deletion, composition drift).
43
+
-**Full Flux/Argo CD deep integration**
44
+
Deep support for Flux and Argo CD: reconciliation status, sync state, Git repository linking, and visual indicators for drift or sync failures.
47
45
48
-
-**Resource diff & history viewer**
49
-
Show changes over time (generation diffs), previous states, and who/what triggered updates.
Copy file name to clipboardExpand all lines: docs/SSO_SETUP.md
+21-1Lines changed: 21 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -72,7 +72,27 @@ sso:
72
72
3. **Copy the client ID and secret** to your config
73
73
4. **Use the issuer URL** (usually ends with `/realms/...` or `/oauth2/...`)
74
74
75
-
The implementation supports **OIDC Discovery** - if you provide the `issuer` URL, it will automatically discover the authorization, token, and userinfo endpoints.
75
+
The implementation supports **OIDC Discovery** - if you provide the `issuer` URL, it will automatically discover the authorization, token, and userinfo endpoints. The discovered endpoints take precedence over any explicit `authorizationURL`/`tokenURL`/`userInfoURL` you set.
Leave `issuer` empty to **skip discovery** and use the explicit `authorizationURL`, `tokenURL`, and `userInfoURL` exactly as written. This is required when the identity provider is reachable at different URLs from the browser and from inside the cluster — a public `authorizationURL` for the user's browser redirect, plus in-cluster `tokenURL`/`userInfoURL` for the server-side code→token exchange and userinfo lookup:
0 commit comments