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.
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
- The owner writes the guide in Markdown through a form on the site.
- Parsedown converts it to HTML, and an allowlist sanitiser keeps only known-safe tags, attributes and link types.
- 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.
- 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