Ochre & Ivy

Type

client

Timeframe

2 Months

Overview

A fully custom blogging platform built for a school teacher who wanted an online home to share their passion for all things natural and organic. Having found Squarespace and Wix too costly and restrictive, I built the site from scratch in TypeScript — no framework — with a built-in CMS and a user-friendly admin panel.

Tech Stack

TypeScript

CSS 3

Express

MongoDB

Ochre & Ivy blog homepage with hand-drawn illustration and typography

design

The brief called for something simple and minimal. With little copy across the site, it was essential that the blog and recipe content stayed front and centre and easy to digest — so I drew on my graphic design background to craft a brand identity that felt both unique and memorable.

Wherever others might reach for JavaScript or a library to build carousels and animations, I opted for CSS instead. That kept the site lightweight and fast, and made for a more accessible experience for users with disabilities.

development

As a deliberate learning exercise, I built the site from the ground up without a framework — a deep dive into how websites work under the hood and how to tune them for performance. The result scores 100% on Google Lighthouse across both mobile and desktop.

At its core is a built-in CMS that lets the client create, update, and delete content without ever leaving the site, secured behind user authentication and powered by EditorJS. Content is saved as JSON, validated on both the client and server to prevent code injection, then parsed and rendered — giving the client a flexible, familiar editing experience with no need to touch HTML or markdown.