diff --git a/build/doc.sh b/build/doc.sh
index a36bc8fb0..961c59684 100755
--- a/build/doc.sh
+++ b/build/doc.sh
@@ -101,6 +101,7 @@ readonly MARKDOWN_DOCS=(
qsn
qtt
j8-notation
+ htm8
# Protocol
pretty-printing
stream-table-process
diff --git a/doc/htm8.md b/doc/htm8.md
new file mode 100644
index 000000000..8e696e445
--- /dev/null
+++ b/doc/htm8.md
@@ -0,0 +1,164 @@
+---
+in_progress: yes
+default_highlighter: oils-sh
+---
+
+HTM8 - Efficient HTML with Errors
+=================================
+
+- Syntax Errors: It's a Subset
+- Efficient
+ - Easy to Remember
+ - Easy to Implement
+ - Runs Efficiently - you don't have to materialize a big DOM tree, which
+ causes many allocations
+
+
+
+
+## Basic Structure
+
+### Text Content
+
+Anything except `&` and `<`.
+
+These must be `&` and `<`.
+
+`>` is allowed, or you can escape it with `>`.
+
+### 3 Kinds of Character Code
+
+1. `&` - named
+1. `ϧ` - decimal
+1. `ÿ` - hex
+
+### 3 Kinds of Tag
+
+1. Start
+1. End
+1. StartEnd
+
+### 2 Kinds of Attribute
+
+1. Unquoted
+1. Quoted
+
+### 2 Kinds of Comment
+
+1. ``
+1. ` ?>` (XML processing instruction)
+
+
+## Special Rules, From HTML
+
+### 2 Tags Cause Special Lexing
+
+- `` in a string literal?
+- Foreign `