create Dec 31, 2025 7:21am · 16 days ago
Changed fields
Field Before After
id nil 16
canonical_name nil how wittle works
created_at nil 2025-12-31 07:21:23.609846000 UTC +00:00
metadata {} {"docs" => true, "source_wiki" => "docs", "source_wiki_source" => "How_Wittle_Works.md", "summary" => "The mental model for users, wikis, pages, and URLs.", "icon" => "🧠"}
name nil How Wittle Works
wiki_id nil 2

Content diff

+40 −0
Before After
## The model
- A **User** owns many **Wikis**
- A **Wiki** owns many **Pages**
## URLs
Wittle uses a simple URL shape:
- A wiki: `/USER/WIKI`
- A page: `/USER/WIKI/PAGE`
For example:
- `/wittle/docs`
- `/wittle/docs/Links`
## Page names and URL names
Page names can contain spaces, but URLs use underscores:
- “Main Page” becomes `Main_Page`
- “Getting Started” becomes `Getting_Started`
Links and page lookups are **case-insensitive**.
## Rendering
Pages are written in **Markdown** and rendered to HTML.
- HTML is sanitized for safety.
- Code blocks, lists, headings, quotes, etc. work as you’d expect.
## Missing pages
If you click a link to a page that doesn’t exist yet, you’ll see a “Page not found” screen.
If you have permission to edit that wiki, you’ll get a **Create this page** button.