diff --git a/app/infrastructure/page.tsx b/app/infrastructure/page.tsx
new file mode 100644
index 0000000..ee0c4e9
--- /dev/null
+++ b/app/infrastructure/page.tsx
@@ -0,0 +1,136 @@
+"use client";
+import { motion } from "framer-motion";
+import { ShieldCheck, Zap, Globe, Cpu, Terminal } from "lucide-react";
+import Link from "next/link";
+
+const CAPABILITIES = [
+ {
+ title: "Cloud Orchestration",
+ icon: ,
+ skills: ["Kubernetes", "Docker", "Cloud Run", "Multi-Region VPC"],
+ description:
+ "Managing containerized application lifecycles and software-defined networks to ensure high availability and regional data sovereignty.",
+ },
+ {
+ title: "Provisioning & IaC",
+ icon: ,
+ skills: ["Terraform", "Makefiles", "Shell Scripting", "Versioned State"],
+ description:
+ "Defining environment state through version-controlled configurations to ensure reproducible, predictable, and audit-ready cloud resources.",
+ },
+ {
+ title: "Deployment Pipelines",
+ icon: ,
+ skills: [
+ "GitHub Actions",
+ "Woodpecker CI",
+ "Fastlane",
+ "Automated Testing",
+ ],
+ description:
+ "Architecting CI/CD workflows that bridge the gap between local development and production environments with zero-downtime strategies.",
+ },
+ {
+ title: "Governance & Security",
+ icon: ,
+ skills: ["NHS DSPT", "Cyber Essentials", "DPIA", "Secret Management"],
+ description:
+ "Hardening infrastructure and delivery pipelines to maintain alignment with UK health data standards and government security frameworks.",
+ },
+];
+
+export default function InfrastructurePage() {
+ return (
+
+ {/* Tightened Header */}
+
+
+
+
+ Infrastructure and Operationss
+
+
+
+ Technical manifest of experiences in cloud orchestration, deployment
+ pipelines, and security frameworks designed for resilient services in
+ regulated environments.
+
+
+ {/* Corrected Alignment Featured Section */}
+
+
+
+
+ Selected Case Study
+
+
+ Medical-Grade Architecture Analysis
+
+
+ An examination of a multi-cloud environment built to satisfy
+ UK Cyber Essentials and
+ NHS DSPT standards,
+ focusing on data residency and infrastructure-level security.
+
+ );
+}
diff --git a/data/projects.ts b/data/projects.ts
index 0fe22fb..c3e3548 100644
--- a/data/projects.ts
+++ b/data/projects.ts
@@ -265,7 +265,7 @@ graph TB
],
description:
"A social decision-making app that solves 'choice paralysis' by allowing groups to swipe on movies and TV shows, using a real-time matching algorithm to find common interests.",
- storyLabel: "UX // MOBILE_SYNCHRONIZATION",
+ storyLabel: "UX // MOBILE SYNCHRONIZATION",
images: [
"/projects/choosa/choosa-1.jpg",
"/projects/choosa/choosa-2.jpg",
@@ -320,42 +320,85 @@ graph LR
classDef hub fill:#f59e0b,stroke:#d97706,color:#fff
`,
},
+
{
- slug: "flutter-1",
+ slug: "nutriveat",
category: "mobile",
- title: "Flutter-1",
- subtitle: "Personal R&D Pipeline",
- role: "Architect & Creator",
- duration: "2025 — Present",
- stack: ["Python", "FastAPI", "Next.js", "Redis"],
- metrics: ["Sub-50ms Latency", "Automated ETL", "Self-Hosted"],
+ title: "Nutriveat",
+ subtitle: "AI-Powered Personalized Nutrition",
+ role: "Lead Developer & Architect",
+ duration: "2024 — Present",
+ stack: [
+ "Flutter",
+ "Firebase",
+ "OpenAI (GPT-4o)",
+ "Novita AI",
+ "StoreKit / Play Billing",
+ ],
+ metrics: [
+ "Fine-tuned LLM Assistants",
+ "Direct Store Integrations",
+ "Multi-Tier Subscriptions",
+ ],
description:
- "A data science pipeline tool built to explore high-speed processing and real-time visualization of large datasets.",
- images: ["/datasaur-1.jpg"],
- repoUrl: "https://git.georgew.dev/georgew/datasaur",
- liveUrl: "https://ratoong.com",
- engineeringStory:
- "In this high-stakes medical environment, I implemented a custom audit logging system that ensured every state change was immutable...",
- storyLabel: "DATA EFFICIENCY",
- isPrivate: true,
- },
- {
- slug: "flutter-2",
- category: "mobile",
- title: "Flutter-1",
- subtitle: "Personal R&D Pipeline",
- role: "Architect & Creator",
- duration: "2025 — Present",
- stack: ["Python", "FastAPI", "Next.js", "Redis"],
- metrics: ["Sub-50ms Latency", "Automated ETL", "Self-Hosted"],
- description:
- "A data science pipeline tool built to explore high-speed processing and real-time visualization of large datasets.",
- images: ["/datasaur-1.jpg"],
- repoUrl: "https://git.georgew.dev/georgew/datasaur",
- liveUrl: "https://ratoong.com",
- engineeringStory:
- "In this high-stakes medical environment, I implemented a custom audit logging system that ensured every state change was immutable...",
- storyLabel: "DATA EFFICIENCY",
- isPrivate: true,
+ "A comprehensive health and nutrition platform that leverages fine-tuned generative AI to architect personalized meal plans, automate shopping lists, and provide real-time culinary assistance.",
+ storyLabel: "AI ORCHESTRATION // MONETIZATION",
+ images: [
+ "/projects/nutriveat/nutriveat-6.jpg",
+ "/projects/nutriveat/nutriveat-1.jpg",
+ "/projects/nutriveat/nutriveat-2.jpg",
+ "/projects/nutriveat/nutriveat-3.jpg",
+ "/projects/nutriveat/nutriveat-4.jpg",
+ "/projects/nutriveat/nutriveat-5.jpg",
+ ],
+ isPrivate: false,
+ engineeringStory: `
+Nutriveat represents a deep dive into the practical application of Large Language Models (LLMs) in a consumer-facing mobile environment. The goal was to move beyond a standard "chat wrapper" and create a deeply integrated tool that understands the nuance of dietary constraints, kitchen logistics, and user budgets.
+
+#### Fine-Tuned AI & Structured Output
+A major engineering hurdle was ensuring the AI generated valid, consistent, and safe meal plans. I implemented a system of fine-tuned system prompts and strict schema validation within **Cloud Functions** to force GPT-4o to return structured data. This allowed the app to take raw AI output and instantly transform it into actionable Firestore documents, shopping list items, and high-fidelity image prompts for **Novita AI**.
+
+#### Native Subscription Architecture
+To support the ongoing API costs of generative AI, I architected a robust multi-tier subscription model (Monthly/Annual). I implemented the monetization layer by integrating directly with the **Apple App Store (StoreKit)** and **Google Play Console (Billing Library)**. This involved architecting a custom server-side validation system in Cloud Functions to handle real-time subscription status, grace periods, and cross-platform entitlement logic without the use of third-party middleware.
+
+#### Context-Aware Culinary Assistance
+I developed a specialized AI Chatbot designed to function as a "Kitchen Assistant." Unlike general-purpose bots, this assistant is provided with the specific context of the user's current meal plan, dietary allergies, and available utensils. By using **RAG-lite (Retrieval-Augmented Generation)** principles, the bot can provide accurate unit conversions and tailored cooking instructions that respect the user's specific kitchen setup.
+ `,
+ mermaidChart: `
+graph LR
+ subgraph Client_Mobile [Flutter Frontend]
+ A[Mobile App]:::traffic
+ end
+
+ subgraph Firebase_Backend [Control Plane]
+ Hub((Firebase SDK)):::hub
+ C[Firestore DB]:::node
+ D[Cloud Functions]:::node
+ end
+
+ subgraph AI_Orchestration [Intelligence Layer]
+ F[OpenAI / GPT-4o]:::node
+ G[Novita AI / Stable Diffusion]:::node
+ end
+
+ subgraph Store_Integrations [Native Billing]
+ H[App Store / Play Store]:::traffic
+ end
+
+ A <--> Hub
+ Hub <--> C
+ Hub --> D
+
+ D ==>|Fine-tuned Prompts| F
+ D ==>|Image Generation| G
+ F -.->|JSON Parsing| D
+
+ A <-->|Native IAP Flow| H
+ H -.->|Server-to-Server Hooks| D
+
+ classDef traffic fill:#2563eb,stroke:#3b82f6,color:#fff
+ classDef node fill:#16a34a,stroke:#22c55e,color:#fff
+ classDef hub fill:#f59e0b,stroke:#d97706,color:#fff
+ `,
},
];
diff --git a/public/projects/nutriveat/nutriveat-1.jpg b/public/projects/nutriveat/nutriveat-1.jpg
new file mode 100644
index 0000000..252d9f0
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-1.jpg differ
diff --git a/public/projects/nutriveat/nutriveat-2.jpg b/public/projects/nutriveat/nutriveat-2.jpg
new file mode 100644
index 0000000..02f09f9
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-2.jpg differ
diff --git a/public/projects/nutriveat/nutriveat-3.jpg b/public/projects/nutriveat/nutriveat-3.jpg
new file mode 100644
index 0000000..7baddda
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-3.jpg differ
diff --git a/public/projects/nutriveat/nutriveat-4.jpg b/public/projects/nutriveat/nutriveat-4.jpg
new file mode 100644
index 0000000..c066e0f
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-4.jpg differ
diff --git a/public/projects/nutriveat/nutriveat-5.jpg b/public/projects/nutriveat/nutriveat-5.jpg
new file mode 100644
index 0000000..e7bd749
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-5.jpg differ
diff --git a/public/projects/nutriveat/nutriveat-6.jpg b/public/projects/nutriveat/nutriveat-6.jpg
new file mode 100644
index 0000000..9110377
Binary files /dev/null and b/public/projects/nutriveat/nutriveat-6.jpg differ