From 02514d966c7127db4d5d98118edaf7f887b7382c Mon Sep 17 00:00:00 2001 From: Tom Fynes Date: Tue, 31 Mar 2026 16:06:04 +0100 Subject: [PATCH] fixing links --- blog/2026/github-organisation.md | 3 +- src/components/Universe/index.js | 52 ++++++++++++++++++-------------- src/pages/career.js | 40 +++++++++++++----------- src/pages/index.js | 30 ++++++++++-------- 4 files changed, 73 insertions(+), 52 deletions(-) diff --git a/blog/2026/github-organisation.md b/blog/2026/github-organisation.md index 6cfe0ba..85b5841 100644 --- a/blog/2026/github-organisation.md +++ b/blog/2026/github-organisation.md @@ -70,4 +70,5 @@ If you've been putting it off because it felt like unnecessary ceremony, I'd pus --- -Fynes Forge is at [github.com/fynes-forge](https://github.com/fynes-forge) if you want to see how it looks in practice. The profile README and repo structure are all there. If you want to see the branding itself — colours, logo variants, typography, and UI elements — the full reference is at [fynes-forge.github.io/branding-pack-v2.html](https://fynes-forge.github.io/branding-pack-v2.html). +Fynes Forge is at [github.com/fynes-forge](https://github.com/fynes-forge) if you want to see how it looks in practice. The profile README and repo structure are all there. If you want to see the branding itself — colours, logo variants, typography, and UI elements — the full reference can be seen [here]( +/branding-pack-v2.html). diff --git a/src/components/Universe/index.js b/src/components/Universe/index.js index 054c7a1..cb3a083 100644 --- a/src/components/Universe/index.js +++ b/src/components/Universe/index.js @@ -60,6 +60,16 @@ const milestones = [ isCurrent: false, r: 8, }, + { + id: 6, + x: 770, + y: 86, + role: "Lead Data Engineer ", + company: "Jet2", + period: "2024–2024", + isCurrent: false, + r: 8, + }, { id: 6, x: 820, @@ -91,23 +101,23 @@ function extractStartYear(period) { /** Static star field — pre-defined to keep SSR safe (no Math.random on server). */ const STARS = [ - { cx: 45, cy: 30, r: 1.2, d: 0.0 }, - { cx: 120, cy: 75, r: 0.8, d: 0.5 }, - { cx: 195, cy: 18, r: 1.0, d: 1.2 }, - { cx: 310, cy: 58, r: 0.7, d: 0.3 }, - { cx: 450, cy: 14, r: 1.1, d: 1.8 }, - { cx: 560, cy: 48, r: 0.9, d: 0.8 }, - { cx: 650, cy: 22, r: 1.0, d: 2.1 }, - { cx: 740, cy: 42, r: 0.8, d: 0.1 }, - { cx: 845, cy: 18, r: 1.1, d: 1.5 }, - { cx: 890, cy: 65, r: 0.7, d: 0.9 }, - { cx: 58, cy: 148, r: 0.8, d: 2.3 }, + { cx: 45, cy: 30, r: 1.2, d: 0.0 }, + { cx: 120, cy: 75, r: 0.8, d: 0.5 }, + { cx: 195, cy: 18, r: 1.0, d: 1.2 }, + { cx: 310, cy: 58, r: 0.7, d: 0.3 }, + { cx: 450, cy: 14, r: 1.1, d: 1.8 }, + { cx: 560, cy: 48, r: 0.9, d: 0.8 }, + { cx: 650, cy: 22, r: 1.0, d: 2.1 }, + { cx: 740, cy: 42, r: 0.8, d: 0.1 }, + { cx: 845, cy: 18, r: 1.1, d: 1.5 }, + { cx: 890, cy: 65, r: 0.7, d: 0.9 }, + { cx: 58, cy: 148, r: 0.8, d: 2.3 }, { cx: 148, cy: 195, r: 1.0, d: 0.6 }, { cx: 280, cy: 165, r: 0.9, d: 1.1 }, { cx: 420, cy: 128, r: 0.7, d: 2.7 }, { cx: 600, cy: 150, r: 1.1, d: 0.4 }, { cx: 760, cy: 162, r: 0.8, d: 1.9 }, - { cx: 30, cy: 275, r: 0.7, d: 0.7 }, + { cx: 30, cy: 275, r: 0.7, d: 0.7 }, { cx: 165, cy: 425, r: 0.9, d: 1.6 }, { cx: 350, cy: 440, r: 0.8, d: 2.4 }, { cx: 495, cy: 410, r: 0.7, d: 0.2 }, @@ -117,8 +127,8 @@ const STARS = [ { cx: 448, cy: 358, r: 0.7, d: 0.8 }, { cx: 788, cy: 248, r: 0.8, d: 2.5 }, { cx: 918, cy: 158, r: 0.6, d: 1.0 }, - { cx: 328, cy: 98, r: 0.7, d: 2.2 }, - { cx: 708, cy: 82, r: 0.8, d: 0.3 }, + { cx: 328, cy: 98, r: 0.7, d: 2.2 }, + { cx: 708, cy: 82, r: 0.8, d: 0.3 }, ]; /** @@ -181,13 +191,13 @@ export default function Universe() { - - - + + + - - + + @@ -373,9 +383,7 @@ export default function Universe() { className="absolute bottom-4 left-1/2 -translate-x-1/2 px-4 py-3 rounded-xl text-sm pointer-events-none z-10" style={{ background: "rgba(4, 4, 18, 0.95)", - border: `1px solid ${ - hovered.isCurrent ? ACCENT : PERIWINKLE - }45`, + border: `1px solid ${hovered.isCurrent ? ACCENT : PERIWINKLE}45`, boxShadow: hovered.isCurrent ? `0 0 24px ${ACCENT}30` : `0 0 14px ${PERIWINKLE}18`, diff --git a/src/pages/career.js b/src/pages/career.js index e20859e..30ec50b 100644 --- a/src/pages/career.js +++ b/src/pages/career.js @@ -19,7 +19,7 @@ const ACCENT = "#DD7596"; const PERIWINKLE = "#B7C3F3"; const PALE_BLUE = "#AED6F1"; const MAGENTA = "#ECDA90"; -const CONTACT_EMAIL = "tom.fynes@icloud.com"; +const CONTACT_EMAIL = "tf.dev@icloud.com"; // ─── Data ────────────────────────────────────────────────────────────────────── @@ -27,6 +27,7 @@ const FILTERS = [ { id: "all", label: "All" }, { id: "emis-optum", label: "EMIS / Optum" }, { id: "data-shed", label: "The Data Shed" }, + { id: "jet-2", label: "Jet2" }, ]; const workHistory = [ @@ -48,7 +49,7 @@ const workHistory = [ }, { id: 2, - company: "EMIS", + company: "Jet2", role: "Lead Data Engineer", period: "January 2024 – March 2024", badge: null, @@ -164,14 +165,14 @@ const workHistory = [ ]; const KEY_SKILLS = [ - { label: "Python", color: ACCENT }, - { label: "SQL", color: PERIWINKLE }, - { label: "Spark", color: MAGENTA }, - { label: "Airflow", color: PALE_BLUE }, + { label: "Python", color: ACCENT }, + { label: "SQL", color: PERIWINKLE }, + { label: "Spark", color: MAGENTA }, + { label: "Airflow", color: PALE_BLUE }, { label: "Snowflake", color: PERIWINKLE }, - { label: "AWS", color: MAGENTA }, - { label: "Azure", color: ACCENT }, - { label: "dbt", color: PALE_BLUE }, + { label: "AWS", color: MAGENTA }, + { label: "Azure", color: ACCENT }, + { label: "dbt", color: PALE_BLUE }, ]; // ─── Sub-components ──────────────────────────────────────────────────────────── @@ -299,7 +300,11 @@ function WorkCard({ entry, isHovered }) { {/* Highlights */}