Emircan Erdemci

emircyn.com

A bilingual portfolio with scroll animation and a WebGL gallery.

  • TypePortfolio
  • Year2026
  • My roleDesign and development

My personal site, with a dark-room setting, a red navigation thread and a curved project gallery. Built in English and Turkish.

The challenge

Show my interface work through motion while keeping the site fast and usable without JavaScript.

My role

I designed and built the visuals, animations, WebGL gallery, bilingual content model and Worker.

Architecture

Where each part runs. Red follows the example flow.

  1. L1 Interface Runs on: Browser

    Static HTML and inline CSS. Animation starts after first paint; the gallery pauses off screen or in hidden tabs.

    • Astro 5
    • GSAP ScrollTrigger
    • Lenis
    • WebGL
    • View Transitions
  2. L2 Server Runs on: Cloudflare Workers

    Serves static files and redirects HTTP and www to canonical HTTPS.

    • Cloudflare Workers
    • Static assets

Step by step: A first visit

  1. L2 · Server The Worker serves HTML with inline styles.
  2. L1 · Interface Preloaded images and fonts support the first paint.
  3. L1 · Interface Animation starts during browser idle time after page load.
  4. L1 · Interface Supported devices enable WebGL; rendering pauses off screen.

Key decisions

  1. 01

    Static layout

    Content and links work without JavaScript. Motion respects the reduced-motion preference.

  2. 02

    Deferred animation

    Animation starts after first paint. Recorded Lighthouse performance: 100 desktop, 91 throttled mobile.

  3. 03

    Native gallery

    WebGL adds visual effects over a native scroll-snap track with touch, keyboard navigation and real links.

  4. 04

    Grain texture

    A pre-rendered grain tile replaced filters that crashed software-rendered Chromium.

Desktop and mobile

Next project · 01 Porch A link page builder with live previews and subscriptions.
Contact

Let's talk.

Email me about your next web project.

Email me emircan.erdemci@hotmail.com