SL
All work
02Full-stack build2026

Narlo Thoughts

A reflective writing platform, built from the database up.

In the story, this one is a website. Same method, different material.

Photographic plate
Narlo Thoughts — Reading ViewFig. 01 — Long-form, distraction-free

01 — The Challenge

Most publishing tools optimise for engagement, not thought. I wanted a slower, more honest space to write and read — and I wanted to build the whole thing myself, front to back, rather than assemble it from plugins.

02 — The Approach

  1. 01

    Built on Express, EJS and SQLite — deliberately lightweight, no heavy framework, every layer legible.

  2. 02

    Modelled authors, posts, follows and a personalised feed as a small, well-shaped relational schema.

  3. 03

    Designed reading-first: generous type, calm spacing, nothing competing with the words.

  4. 04

    Shipped follow / feed mechanics so the platform is social without being noisy.

Photographic plate
Feed & FollowsFig. 02 — Social, without the noise
Photographic plate
Author ProfileFig. 03 — A room of one's own

03 — The Outcome

  • A feature-complete, self-hosted publishing platform running in production on a VPS.

  • A codebase small enough to reason about entirely — and extend with confidence.

  • A clear backlog (notifications, email flows, image uploads, SEO) scoped and deferred on purpose.

04 — Lessons Learned

Building the full stack yourself removes the mystery — you understand exactly where behaviour comes from.

Shipping the smallest honest version beats designing the perfect one that never launches.

Deferring features explicitly is a decision, not a gap.

Skills demonstrated

Node / ExpressData modellingSQLiteServer-side renderingProduct scopingDeployment / VPS

Next — 03

Brew Society