PORTFOLIO

Knowledge Hub

LIVE solo

readme.md

An always growing collection of guides and tutorials.

What it is

Knowledge Hub is a free, shared library of guides covering computer science, mathematics, business studies and health sciences. Anyone can read it, and new guides are added on request. It grew from one belief: knowledge should be free and shared.

Open the Knowledge Hub →

What's inside

  • Live guides, written in Markdown and stored in MySQL. Among them is SQL Explained by an Idiot, a three-part series that moves from data, information and knowledge, through entities and ER diagrams, to writing real CREATE, SELECT and JOIN queries.
  • The Tūhura Tech archive: 121 pages from the original Tūhura Tech wiki covering game development, cybersecurity, Blender, Python, web development and JavaScript, preserved read-only as its own project.

How a page gets published

  1. The owner writes the guide in Markdown through a form on the site.
  2. Parsedown converts it to HTML, and an allowlist sanitiser keeps only known-safe tags, attributes and link types.
  3. The page is saved to MySQL with anchor links on every heading and tables that scroll on a phone, and it appears in the sidebar under its topic straight away.
  4. Every page offers its Markdown source as a download, so a guide can be revised offline and published again.

Design decisions

Decision Why
Pages live in the database The server deploys itself with git pull every minute, and a page written into a tracked file would stall that pull.
Allowlist sanitiser Even with a stolen login, only known-safe tags, attributes and URL types can reach a public page.
Archive in its own namespace Live and archived pages have separate addresses, so publishing never has to check against the old corpus.
Old links redirect Every URL shared before the move still lands on the right page.

Built with

PHP 8 · MySQL · Parsedown · Apache on Ubuntu · Cloudflare Tunnel · 200+ automated checks in plain-PHP and shell test suites