The Skills page translates technical proficiency into a radio-frequency metaphor: each skill is assigned a transmission frequency and a signal level (0 – 100). Skills are grouped into four system groups named after spacecraft subsystems — NAVIGATION, PROPULSION, LIFE SUPPORT, and COMMS — each operating on a distinct frequency band. TheDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/sys-core/llms.txt
Use this file to discover all available pages before exploring further.
FrequencyGauge and SignalBars components visualise the level and frequency for each skill. The route is #/skills and the static entry point is pages/Skills.html.
Components Used
| Component | Role |
|---|---|
FrequencyGauge | Renders a tuning-dial gauge showing the skill’s frequency |
SignalBars | Renders a bar-graph indicator scaled to the skill’s level (0 – 100) |
HudFrame | Decorative panel wrapper around each system group |
Starfield | Full-viewport animated background |
NebulaBackground | Atmospheric depth layer |
HudNav | Persistent top navigation |
PageTransition | Enter/exit animation wrapper |
Frequency Gauge
Tuning-dial component that displays a skill’s transmission frequency.
Signal Bars
Bar-graph proficiency indicator scaled to the skill level (0–100).
The Frequency Metaphor
Rather than a standard progress bar, each skill is mapped to a radio frequency. Higher frequencies suggest more specialised or refined capabilities, while thelevel value (0 – 100) controls how many signal bars are illuminated. This creates a dual-axis view of each skill: how strong the signal is (proficiency) and what channel it broadcasts on (domain).
System Groups
All skill data lives indata/skills.js and is exported as an array of four group objects.
NAVIGATION — Front-end & Interface Systems
NAVIGATION skills (144 MHz band)
NAVIGATION skills (144 MHz band)
PROPULSION — Back-end & Data Processing
PROPULSION skills (432 MHz band)
PROPULSION skills (432 MHz band)
| Skill | Level | Frequency |
|---|---|---|
| Node.js | 85 | 432.1 MHz |
| PostgreSQL | 80 | 432.5 MHz |
| Redis | 75 | 433.0 MHz |
| GraphQL | 70 | 433.8 MHz |
LIFE SUPPORT — Tooling & Infrastructure
LIFE SUPPORT skills (1 GHz band)
LIFE SUPPORT skills (1 GHz band)
| Skill | Level | Frequency |
|---|---|---|
| Git / CI/CD | 90 | 1.2 GHz |
| Docker | 75 | 1.3 GHz |
| AWS / Vercel | 80 | 1.4 GHz |
| Jest / Vitest | 85 | 1.5 GHz |
COMMS — Soft Skills & Design
COMMS skills (5 GHz band)
COMMS skills (5 GHz band)
| Skill | Level | Frequency |
|---|---|---|
| UI/UX Design | 85 | 5.0 GHz |
| Tech Writing | 90 | 5.2 GHz |
| Mentorship | 80 | 5.4 GHz |
| Agile/Scrum | 85 | 5.8 GHz |
Skill Data Shape
Each group object indata/skills.js follows this schema:
Updating a Skill Level
Opendata/skills.js and change the level value for the relevant skill. The SignalBars component re-renders automatically — no component code changes needed.
Adding a New Skill
Locate the appropriate group object indata/skills.js and push a new entry into its skills array:
- Within the same band as the other skills in that group (preserves the metaphor).
- Not already used by another skill.
Adding a New System Group
Push a new group object into the root array indata/skills.js:
Related Pages
Skills Data
Full schema reference for data/skills.js.
Frequency Gauge
Component reference for the tuning-dial frequency display.
Signal Bars
Component reference for the proficiency bar-graph indicator.
HUD Frame
Decorative panel wrapper used around each skill group.