AM

one sec — warming things up...

open to collabs & side quests

hello world, I'm

Akila
Maduranga

 

Enthusiast, not professional. I code for fun, photograph everything else, and built this whole site myself — from Sri Lanka, with a lot of tea.

find me online:
Sri Lanka5 years of tinkering3 little projects12 photos taken
akila@cosmos: ~/portfolio

$ whoami

enthusiast · tinkerer · guy with a camera

$ cat about.txt

"not a pro — just really into this stuff"

$ ls ./current_obsessions

nextjs/ cameras/ selfhosting/ tea/

$ ls ./gallery | wc -l

✦ 12 photos and counting ✦

$

// 01

About

Who I am, in slightly too many words

AMAROUND SINCE 2021

tinkering for

5+ yrs

Hey, I'm Akila. I'm Akila — and no, I'm not a professional developer or a professional photographer. I'm just someone who genuinely likes making things.

By night I'm usually in a terminal somewhere: little web experiments, scripts that fix problems only I have, and a home server that stays up most of the time. On weekends I carry a camera around Sri Lanka — hills, coast, streets, the occasional night sky — and I've stopped pretending I'll ever sort the photo library properly.

This site is one of my favourite experiments so far. I built the whole thing myself: the animations, the admin panel where I edit everything, even the words you're reading right now. It broke many times along the way. That's kind of the fun part.

currently into

next.js, self-hosting & old lenses

cameras owned

more than I need, fewer than I want

weekend status

out shooting somewhere in the hills

fuel of choice

plain tea, three sugars

// 02

Projects

Things I've built — some useful, some just fun

TV
featured

01 · favourite

This Very Website

The site you're looking at, actually. Next.js underneath, an animated starfield drawn on a canvas, and an admin panel so I can edit every word and photo without touching code. It took a few weekends, several rewrites of this exact paragraph, and one unfortunate incident where I deleted the whole thing at 2 AM.
  • Next.js
  • TypeScript
  • Tailwind CSS
  • Supabase

▸ more from the lab

SC

SD Card Rescue Script

A small pipeline that grabs photos off my SD cards, sorts them by date and place, backs them up, and pushes the keepers to cloud storage. Built it because doing this by hand got old around trip number three. It has saved roughly 40 GB of holiday memories so far.

  • Python
  • Cloudflare R2
  • Bash
TI

The Immortal Home Server

An old PC that refused to die, so now it runs my files, my backups and a couple of self-hosted apps. Current uptime record: 47 days. Current record after I tripped over the power cable: 0 minutes. Learning Docker one broken container at a time.

  • Linux
  • Docker
  • Self-hosting

// 04

Blog

Notes and updates on new stuff I'm doing

Oct 30, 20261 min read

Hello, internet

First post. Why this site exists, what I'll be posting about, and a small promise to my future self.

  • meta
  • first post
read it
Nov 1, 20262 min read

I built this site from scratch (and you can poke around)

The story of this website — the stack, the mistakes, the 2 AM deletion incident, and why the admin panel is my favourite part.

  • site
  • next.js
  • behind the scenes
read it

// 05

Skills

Stuff I use — no certificates, just curiosity

Frontend

4 in the rotation

HTML & CSSpretty decent
JavaScriptpretty decent
Reactpretty decent
Tailwind CSSpretty decent

Backend

4 in the rotation

Node.jsgetting there
Supabasegetting there
PostgreSQLgetting there
Pythongetting there

Tools

5 in the rotation

Gitpretty decent
VS Codedangerously confident
Linuxgetting there
Dockerjust started
Lightroompretty decent
HTML & CSSJavaScriptReactNext.jsTailwind CSSNode.jsSupabasePostgreSQLPythonGitLinuxDockerVS CodeLightroomFigmaVimHTML & CSSJavaScriptReactNext.jsTailwind CSSNode.jsSupabasePostgreSQLPythonGitLinuxDockerVS CodeLightroomFigmaVim

// 06

Journey

How I ended up here — a short timeline

2010 —

A computer I could take apart

where the curiosity started

It was slow, it was loud, and I took it apart more times than anyone appreciated. That's roughly when I learned that breaking things is just learning with extra steps.

2018 —

First proper camera

the photography bug

A hand-me-down with one working lens and a shutter that stuck sometimes. I shot terrible photos of everything for months. Some of them are still my favourites.

2021 —

Started building for the web

one index.html at a time

My first page was a disaster of marquee tags and broken images, and I was ridiculously proud of it. Still get that exact feeling every time something I build actually works.

2025 — Present

Built this whole site

current obsession

Designed it, animated it, wired the database, wrote the words. Somewhere along the way it stopped being a project and became the place I put things I make.

still going

// 07

Connect

Where to find me online

Say hi — about anything

Want to talk cameras, code, self-hosting, or the best short-eats spot on the island? My inbox is open. No pitch required — nice strangers are welcome too.

Send an email

▸ usually replies within a day or two — no promises