Back

All Projects

A vertical timeline of shipped and evolving work. Each build pushes experimentation with AI, interaction, and edge performance.

Old Personal Portfolio

A Next.js based old personal portfolio website, utilising various technologies such as a CMS, Three.js and Shaders.

Completed
December 2024

Tech Stack

Next.jsReactTypescriptPrismic CMSThree.js3D GraphicsTailwind CSSPostCSSSlice MachineCloudflareShadersGSAP

Key Features

  • Prismic driven content slices
  • Custom GLSL shader accents
  • Optimised image delivery via Cloudflare
  • Reusable layout primitives
  • Accessible keyboard navigation
  • Theming & content versioning

Language Learning App

A Ruby on Rails language learning app made for a real client as a university project. Through requirements and regular meetings we developed an app that met the desired standards.

Completed
May 2025

Tech Stack

Ruby on RailsPostgreSQLActiveStorageHAMLBootstrapShakerPackerRakeGSAPWSLGitlabFigma

Key Features

  • Role‑based user & admin dashboards
  • Progress tracking & spaced repetition logic
  • Media asset handling via ActiveStorage
  • Real client requirement gathering process
  • Component animations powered by GSAP
  • Secure Postgres relational schema
Source

MNIST From-Scratch Image Classifier

A complete machine learning pipeline built entirely from scratch in Python for handwritten digit classification, featuring custom SVM and KNN implementations with advanced preprocessing and 99.8% accuracy on noisy test data.

Completed
December 2024

Tech Stack

PythonNumPySciPyAIMachine LearningComputer VisionMathematics

Key Features

  • Custom multi-class SVM with One-vs-All strategy
  • Mini-batch gradient descent with hinge loss optimization
  • PCA dimensionality reduction retaining 95% variance
  • Advanced data augmentation (rotation, flip, noise)
  • Robust preprocessing with threshold masking and Gaussian blur
  • Complete type annotations and comprehensive documentation
  • Performance progression from 70% to 99.8% accuracy
  • Model persistence and evaluation pipeline
Source

3D Rasterizer Engine

A 3D engine pipeline built from scratch enrirely in python, usiliting rasterzing, loading models from .obj files and using custom vector and matrix types.

Completed
June 2023

Tech Stack

PythonPygame3D GraphicsRasterizationMathematicsObject representation

Key Features

  • Custom software rasterization pipeline with triangle filling and z-buffering
  • Support for loading and rendering 3D models from .obj files
  • Custom vector and matrix math library for transformations
  • Camera system with perspective projection and rotation controls
  • Wireframe and solid rendering modes for debugging and visualization
  • Scene management with multiple objects and real-time rendering loop
Source

Interactive AI Portfolio

This live portfolio you're browsing: an AI-augmented, animation-rich Next.js site with streaming Groq chat, contextual system prompt generation, markdown rendering, and dynamic placeholder suggestion engine.

In Progress
September 2025

Tech Stack

Next.jsReactTypeScriptTailwind CSSGSAPLLM StreamingGroqMarkdownNode.jsEdge PatternsAILLMAPI

Key Features

  • Real-time streaming AI chat with conversation memory & fallback model chain
  • RunId-based deterministic placeholder suggestion animator (no overlap)
  • Lightweight custom markdown renderer with links, code & lists
  • Dynamic system prompt built from structured JSON context & project injection
  • Responsive glass UI with particle & hero entrance animations (GSAP)
  • Model fallback chain (Mixtral → Gemma2 → Llama 8B) for resilience
  • Type-safe project metadata with extended feature lists
  • Optimized minimal message rendering and scroll management
Source

Mobile Based Offline AI App

A mobile based app that runs distilled models on the phone to access AI without internet. It also has personalities, offline maps and survival guides.

In Progress
July 2025

Tech Stack

AILLMFlaskPythonLLama.cppSQLiteGGUFSwiftFigmaReactNext.js

Key Features

  • Fully offline inference (no cloud dependency)
  • Multiple AI personalities / system profiles
  • Local vector store & semantic recall
  • Offline maps & survival reference modules
  • Optimized quantized GGUF models (memory aware)
  • Energy adaptive runtime (battery aware)
Source

Texas Hold'em Poker in Haskell

A complete Texas Hold'em poker game implementation in pure Haskell featuring multiple AI strategies, comprehensive hand evaluation, and full game mechanics including betting rounds, blinds, and sophisticated tie-breaking systems.

Completed
December 2024

Tech Stack

HaskellFunctional ProgrammingGame DevelopmentAIRandom GenerationMonadic Programming

Key Features

  • Complete poker hand evaluation system (Royal Flush to High Card)
  • Four distinct AI strategies: Random, Passive, Aggressive, and Smart
  • Human player interaction with input validation
  • Full betting mechanics (fold, check, call, raise) with proper constraints
  • Comprehensive tie-breaking system for all hand types
  • Proper blind system implementation (small/big blinds)
  • Multi-round gameplay with chip tracking and dealer rotation
  • Advanced functional programming patterns and monadic IO
  • Deck shuffling and card dealing with proper randomization
  • Complete game state management and player elimination
  • Sophisticated winner determination with multiple tied players
  • Pure functional implementation with immutable data structures
Source