Government of Alberta
Git Insights · Linked data explorer
← All visuals

Linked data explorer

The data pack is three JSON files joined by two keys. Walk the joins yourself: pick a capability on the left, follow its UUIDs to the applications in the middle, and read the full de-identified record on the right.

{{ t('join.title') }}

{{ t('join.sub') }}

capabilities.json 40 {{ t('common.domains') }} · 2,182 {{ t('common.capabilities') }} repos.json 4,041 {{ t('common.applications') }} tech_stacks.json 50 {{ t('join.technologies') }} repo_uuids[] → uuid capabilities[] → name tech.* → tech
{{ t('cta.start') }}

{{ t('col1.title') }}

{{ t('col1.sub') }}

{{ t('tree.head') }}{{ t('common.apps') }}
{{ c.name }} {{ fmt(c.n) }}

{{ t('col2.title') }}

{{ t('col2.sub') }}

{{ r.uuid.slice(0, 8) }} {{ r._risk }}
{{ r.tech.primary_language || t('app.langUnknown') }} · {{ r.scale.loc_band }} LOC
{{ r.aligned_ministry }}
{{ uuidQuery.length >= 3 ? t('empty.noMatch') : t('empty.pick') }}
{{ t('list.showing') }} {{ fmt(appsShown.list.length) }} {{ t('list.of') }} {{ fmt(appsShown.total) }} {{ t('common.applications') }}.

{{ t('col3.title') }}

{{ t('col3.sub') }}

uuid {{ selApp.uuid }}
{{ t('rec.disposition') }}{{ selApp.disposition }}

{{ t('rec.technology') }}

{{ t('rec.primaryLanguage') }}{{ selApp.tech.primary_language || t('val.unknown') }}
{{ lg.name }} {{ lg.percentage }}%
{{ t('rec.frameworks') }}{{ selApp.tech.frameworks.join(', ') }}

{{ t('rec.scaleVintage') }}

{{ t('rec.loc') }}{{ selApp.scale.loc_band }}
{{ t('rec.files') }}{{ selApp.scale.file_band }}
{{ t('rec.age') }}{{ selApp.age_band }}
{{ t('rec.lastActivity') }}{{ selApp.activity_band }}
{{ t('rec.vintage') }}{{ selApp.vintage_band }} ({{ selApp.vintage_year || '–' }})
{{ t('rec.archived') }}{{ selApp.is_archived ? t('val.yes') : t('val.no') }}
{{ t('rec.publicFacing') }}{{ selApp.is_public_facing ? t('val.yes') : t('val.no') }}
{{ t('rec.handlesPii') }}{{ selApp.handles_pii ? t('val.yes') : t('val.no') }}
{{ t('rec.ministry') }}{{ selApp.aligned_ministry }} ({{ selApp.aligned_ministry_confidence }})

{{ t('rec.integration') }}

{{ ir.k }} {{ ir.v }}
{{ t('empty.noIntegration') }}

{{ t('rec.complexity') }}

{{ cr.k }} {{ fmt(cr.v) }}
{{ t('rec.barsNote') }}

{{ t('rec.security') }}

{{ t('rec.riskBand') }} {{ selApp.security.risk_band }}
{{ t('rec.criticalFindings') }} {{ selApp.security.criticals_band }}
{{ t('rec.highFindings') }} {{ selApp.security.high_band }}
{{ t('rec.mediumFindings') }} {{ selApp.security.medium_band }}
{{ t('rec.depVulns') }} {{ selApp.security.dep_vuln_band }}
{{ t('rec.depHealth') }} {{ selApp.security.dependency_health_band }}
{{ t('rec.secrets') }} {{ selApp.security.has_secrets ? t('val.detected') : t('val.noneDetected') }}
{{ t('rec.scanCoverage') }} {{ selApp.security.coverage_band }}
{{ t('rec.integrity') }}{{ selApp.security.integrity_confidence }}

{{ t('rec.cost') }}

{{ t('rec.rebuild') }}{{ selApp.cost.rebuild_band }}
{{ t('rec.remediate') }}{{ selApp.cost.remediate_band }}
{{ t('rec.personDays') }}{{ selApp.cost.person_days_band }}

{{ t('rec.capabilities') }} ({{ selApp.capabilities.length }})

{{ cn }}
{{ t('rec.chipNote') }}
{{ t('empty.selectApp') }}