← All projects & work samples

Interactive 3D website · personal work sample

OWNER-BUILT

MK1 Interactive Portfolio

Owner-built recruitment portfolio with two visual directions, procedural three-dimensional MK1 lettering and an accessible project explorer. No external 3D models or runtime libraries.

JavaScript, WebGL, GLSL, procedural 3D, Node.js, static generation, nginx

MK1 INTERACTIVE PORTFOLIO / SYSTEM VIEW
APIInteractive 3D website · personal work sample
  1. 01Content model
  2. 02Original glyphs
  3. 03WebGL renderer
  4. 04Accessible interaction
  5. 05Static delivery
Schematic illustration · no live data

01 / MY CONTRIBUTION

Responsibility with
domain context.

Owner-built portfolio project implemented with AI assistance: visual direction, domain content, original WebGL geometry and a statically generated, deliberately deployed presence. The sample connects presentation, interaction and inspectable content.

THE STARTING QUESTION

An engineering portfolio needs both attention and concrete answers. Three-dimensional lettering contributes little if project pages are empty. The second visual direction therefore connects an interactive MK1 sculpture with a project explorer, complete case studies, skills and direct contact paths.

02 / ARCHITECTURE

From input to
a dependable outcome.

LAYER 01

Content model

Structure content and evidence

LAYER 02

Original glyphs

Model MK1 glyphs as original polygons

LAYER 03

WebGL renderer

Render extrusion, bevels and material locally

LAYER 04

Accessible interaction

Explore projects through pointer, touch and keyboard

LAYER 05

Static delivery

Publish static pages with verified files

This diagram explains the domain relationship. It does not reconstruct a private production network.

03 / WORKFLOW

A workflow you
can explain.

  1. 01

    Structure content and evidence

  2. 02

    Model MK1 glyphs as original polygons

  3. 03

    Render extrusion, bevels and material locally

  4. 04

    Explore projects through pointer, touch and keyboard

  5. 05

    Publish static pages with verified files

04 / ENGINEERING

The decisions
behind the interface.

01 / DESIGN DECISION

Real geometry rather than a rendered video

Letters originate from explicitly defined polygons. Triangulation, extrusion and bevelled edges produce the surfaces for the WebGL renderer. The lettering therefore genuinely responds to viewing angle rather than playing a video or downloaded 3D model. The material shader creates stylized studio lighting.

02 / DESIGN DECISION

Interaction with an understandable purpose

Dragging and arrow keys change the view. Material controls alter the finish and reset restores the starting point. The project explorer leads to concrete case studies and changes the visual mood. The spatial element remains part of a usable portfolio.

03 / DESIGN DECISION

The alternative works without the scene

All essential content is generated as HTML. Without WebGL, a calm fallback remains. Animation can be paused and respects reduced-motion preferences; rendering stops when the scene is offscreen. The site needs no external fonts, trackers or runtime CDNs.

Deliberate choices

  • Develop presentation and evidence together: visible project areas lead to complete content.
  • Retain the existing live direction and publish the alternative at its own comparable address.
  • Use a small original mesh and native browser features instead of loading a large 3D runtime.
05 / EVIDENCE

What can be inspected.

  • Public alternative website with spatial MK1 lettering, a project explorer and complete evidence pages.
  • Automated checks for geometry, local assets, data boundaries and content completeness.

Personal work sample developed with AI assistance. It does not claim long-term professional WebGL specialization, performance on every GPU or a client engagement. A static fallback and readable content deliberately form part of the solution.

Published-claims register ↗
FOR YOUR TEAM

Working on
a similar challenge?

Let’s discuss the process, system boundaries and a useful first step.

marvinkamp1988@gmail.com ↗My profile for hiring teams ↗