James Doyle
  1. Screenshot of JamesReviewsMusic

    2025

    JamesReviewsMusic

    A personal music blog where I write reviews and track scores.

    • Designed and built a full-stack web application for creating and managing personal album reviews.
    • Developed a RESTful backend API with Hono.js and PostgreSQL, using Drizzle ORM for type-safe database access.
    • Implemented a modern frontend with React and Vite, and added automated backend testing with Jest to validate core application logic.
    • Containerised the application using Docker Compose and configured a Jenkins pipeline to automate deployments.

    Built with React, TypeScript, Hono.js, PostgreSQL and Docker

  2. Screenshot of Phantom

    2026

    Phantom

    A mock API server and traffic inspector built on raw TCP sockets.

    • Built a low-level HTTP/1.1 mock server from scratch using raw Node.js TCP sockets instead of high-level frameworks.
    • Developed a custom HTTP parser to handle manual byte-stream processing, including support for chunked transfer encoding and binary data.
    • Created a real-time monitoring dashboard using Svelte and WebSockets to inspect live request/response cycles and manage server state.
    • Implemented a "Chaos Engine" for testing frontend resilience through programmatic latency injection and configurable failure rates.

    Built with Svelte, TypeScript and Node.js

  3. Screenshot of SandSim

    SandSim

    Falling sand simulation with a number of different materials and interactions between them.

    Built with Rust, TypeScript, React and WebAssembly