BUILT FROM CURIOSITY.

Lore Master Assistant

General-purpose RAG. Ingest URLs and files. Ask anything.

Concept

Lore Master Assistant — concept overview

General-purpose retrieval-augmented generation. Feed it knowledge, ask anything in natural language — the model never has to guess; it cites what you provided.

Sources & formats

Lore Master Assistant — supported sources and file formats

Public URLs and local files (TXT, MD, PDF, DOCX) are parsed, chunked, and embedded into a single semantic vector store. Mixed sources, one knowledge base.

In action

Lore Master Assistant — answering a question with sourced retrieval

Built on MongoDB Atlas Vector Search with OpenAI-compatible embeddings. Answers stay grounded in the documents you fed it — sourced retrieval, no hallucinated facts.

Fokkelman

Over 3,600 family photographs, behind one password.

The archive

Fokkelman demo gallery — sample photos in justified rows, with a search box and a Favorites button

A private vault for my family’s digitized photographs, more than 3,600 of them. The gallery lays them out in rows that keep every photo’s real proportions and draws them in batches as you scroll. Search and filters live in the URL, so any view can be shared. The screenshots show the public demo, which runs the same gallery on sample photos.

Up close

Fokkelman photo viewer — a photo open full screen with a details panel beside it

Open a photo and it fills the screen: zoom and pan by wheel, pinch or keyboard, swipe to the next one, with its neighbours already loaded. Each photo can carry a caption, a year and the people in it, and many photos can be edited at once.

Behind the door

There is no database: Cloudinary is the only store, and captions and people live as metadata on each photo. The password is kept as a scrypt hash and a visit is a signed session cookie; five failed attempts lock a client out for fifteen minutes. More than 560 unit tests and 200 end-to-end tests run against a mock of Cloudinary, and accessibility checks fail the run on any violation.

Kintsugi: The Fall

The battle was lost. The world is broken. You are what comes after.

The fall

Kintsugi: The Fall — concept art evoking the aftermath of a lost battle

The epic battle against the villain already happened. We lost. Half the kingdom fell; the capital is now the enemy’s fortress. This isn’t the rise of a hero — it’s what comes after the fall.

The broken world

Kintsugi: The Fall — a country in ruins after the fall

A turn-based JRPG with active timing. Combat is precise, deliberate, and doesn’t forgive complacency. Every encounter is a small declaration: this place is still worth fighting for.

22 heroes

Kintsugi: The Fall — the twenty-two playable heroes, one per town

Up to twenty-two playable heroes, each rooted in their own town. Recruit them as you push back through the country. Each carries the weight of a place — and that place’s expectations.

Your order

Kintsugi: The Fall — map showing alternative liberation paths

Liberate cities in the order you choose. Different routes meet different heroes, surface different stories, leave different scars. There is no canonical path.

Won't fully mend

Kintsugi: The Fall — kintsugi mending, gold lacquer over fracture

Kintsugi: the art of repairing broken pottery with gold lacquer. The cracks remain visible, glowing. The world that was won’t be back, not entirely. What it becomes is on you.

Status

[ in development ]

In development. No public devlog yet — work on combat, narrative, and the first liberation arc is ongoing.

If you want to know more about me

See more work