diff --git a/src/_includes/markmark.pug b/src/_includes/markmark.pug
new file mode 100644
index 0000000..5b12416
--- /dev/null
+++ b/src/_includes/markmark.pug
@@ -0,0 +1,6 @@
+extends ./obsidian
+
+block content
+ img(src='/assets/markmark-light.svg' eleventy:ignore)
+ header.hero-2 Standard MarkMark (v1.1)
+ .markmark.content-wrapper !{content}
diff --git a/src/assets/css/obsidian.css b/src/assets/css/obsidian.css
index 504fce4..2ca7a7c 100644
--- a/src/assets/css/obsidian.css
+++ b/src/assets/css/obsidian.css
@@ -73,7 +73,7 @@ code {
}
p, h1, h2, h3, h4, h5, h6, li {
- font-size: 1.3em;
+ font-size: 1.3rem;
}
h1:before, h2:before, h3:before, h4:before, h5:before, h6:before {
@@ -110,7 +110,7 @@ h3:before {
/*margin-left: -27px;*/
}
h4 {
- font-size: 1.3em;
+ font-size: 1.3rem;
color: var(--color-2);
margin: 0;
margin-top: 50px;
@@ -120,7 +120,7 @@ h4:before {
/*margin-left: -27px;*/
}
h5 {
- font-size: 1.3em;
+ font-size: 1.3rem;
color: var(--color-2);
margin: 0;
margin-top: 50px;
@@ -130,7 +130,7 @@ h5:before {
/*margin-left: -27px;*/
}
h6 {
- font-size: 1.3em;
+ font-size: 1.3rem;
color: var(--color-2);
margin: 0;
margin-top: 50px;
@@ -179,6 +179,13 @@ p {
margin-top: 0;
}
+.hero-2 {
+ font-size: 3rem;
+ margin-top: 10px;
+ margin-bottom: 30px;
+ font-weight: bold;
+}
+
nav {
margin-top: 25px;
padding-bottom: 25px;
@@ -257,6 +264,10 @@ button:hover {
border-color: var(--color-2);
}
+ul li {
+ margin: 3px 0;
+}
+
ul.plain {
list-style-type: none;
margin: 0;
diff --git a/src/assets/markmark-dark.svg b/src/assets/markmark-dark.svg
new file mode 100644
index 0000000..d33ac94
--- /dev/null
+++ b/src/assets/markmark-dark.svg
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/assets/markmark-light.svg b/src/assets/markmark-light.svg
new file mode 100644
index 0000000..510e858
--- /dev/null
+++ b/src/assets/markmark-light.svg
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/links.mark.md b/src/links.mark.md
new file mode 100644
index 0000000..8a2d2a3
--- /dev/null
+++ b/src/links.mark.md
@@ -0,0 +1,328 @@
+---
+layout: obsidian
+permalink: /links/
+---
+
+[//]: # (markmark-syntax: v1)
+[//]: # (markmark-author-name: Garrett Mills)
+[//]: # (markmark-author-email: shout@garrettmills.dev)
+[//]: # (markmark-author-href: https://garrettmills.dev/)
+
+
+# Read-it-Later
+
+- Why and how I got my own ASN! - Daniel Jakots (2024-01-07)
+ - https://chown.me/blog/getting-my-own-asn
+- Regular Expression Matching with a Trigram Index (2025-01-24)
+ - https://swtch.com/\~rsc/regexp/regexp4.html
+- Debloating containers paper (2025-02-24)
+ - https://www.reddit.com/r/selfhosted/s/IjbayL3ExW
+- ClickHouse - Agent-facing Analytics (2025-02-24)
+ - https://clickhouse.com/blog/agent-facing-analytics
+ - https://github.com/ClickHouse/mcp-clickhouse
+
+
+# Blogs Without RSS
+
+- Dan Luu #dev
+ - https://danluu.com/
+ - https://danluu.com/everything-is-broken/
+- The Grug Brained Developer #dev
+ - https://grugbrain.dev/
+- Sarah Ting #dev
+ - https://sarahjting.com/blog
+- Reuben Son’s *absolutely stunning* personal site
+ - https://reubenson.com/
+- Mike Hoye
+ - https://exple.tive.org/blarg/
+- Untapped Journal #architecture #urbanism
+ - https://www.untappedjournal.com/
+- Milk Kommunikations Ko-Op - an all-time classic
+ - https://milk.com/
+- Martin Fowler
+ - https://martinfowler.com/
+- Mikroverlag - New blog about European tech stories (2025-11-12)
+ - https://www.mikroverlag.com/en
+
+
+# Other Blogging
+
+- Webrings
+ - https://endgameviable.com/post/2024/08/webrings-really/
+ - https://ring.recurse.com/
+- Ask HN: Great Blogs by Programmers
+ - https://news.ycombinator.com/item?id=30245247
+- George Hotelling - RSS Tricks (2025-01-09)
+ - https://george.hotell.ing/2025/01/07/rss-tricks/
+- Your Favorite Newsletter’s Favorite Newsletters (2025-01-20)
+ - https://linksiwouldgchatyou.substack.com/p/your-favorite-newsletters-favorite
+
+
+# Games
+
+- Riddl.ing (2025-01-11)
+ - https://riddl.ing/
+- Survive the Tyrant - An RPG-style guide to surviving an authoritarian regime (2025-01-26)
+ - https://survivethetyrant.infy.uk/
+
+
+# Cycling
+
+- Spencer McCullough’s bike trip to 48 national parks (+ an excellent bike camping map)
+ - https://onelongtrip.bike/
+ - https://gobikecamping.com/map
+- Helmet Wind Straps
+ - https://youtube.com/shorts/8-Ph6CjKopY?si=QGVb7HrKT7FejGZI
+- A love letter to bicycle maintenance and repair
+ - https://tegowerk.eu/posts/bicycle-repair/
+
+
+# Art
+
+- Scott Boms’ “Ignore All Previous Instructions†print set
+ - https://scottboms.com/shop/ignore-all-previous-instructions-print-set
+- Public Domain Image Archive (2025-01-11)
+ - https://pdimagearchive.org/
+- “everyday†by Noah Kalina (2025-01-21)
+ - https://everyday.photo/
+- Lachlan Turczan - incredible exploration of light and nature (2025-02-16)
+ - https://www.lachlanturczan.com/
+
+
+# Places
+
+- Indianapolis
+ - https://www.indianapolismonthly.com/best-of-indy/best-of-indy-dining-2/
+ - https://cbs4indy.com/indiana-news/downtown-indianapolis-lunch-spot-to-be-featured-on-diners-drive-ins-and-dives
+ - https://www.indianapolismonthly.com/uncategorized/review-shadow-lounge-restaurant/
+ - https://www.devourindy.com/
+ - https://www.filigreebakery.com/
+- Chicago
+ - https://joymachine.art/
+- Switzerland
+ - https://glacierexpress.ch/en
+
+
+# Evergreen Posts
+
+- Command Line Interface Guidelines #dev
+ - https://clig.dev/
+- Code Rant - The Configuration Complexity Clock #dev
+ - https://mikehadlow.blogspot.com/2012/05/configuration-complexity-clock.html
+- Terence Eden - The Unreasonable Effectiveness of Simple HTML #dev
+ - https://shkspr.mobi/blog/2021/01/the-unreasonable-effectiveness-of-simple-html/
+- Mark L Irons - Patterns for Personal Websites #dev #archive
+ - https://web.archive.org/web/20190904131208/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/index.html
+ - https://web.archive.org/web/20190826113439/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/standard.header.and.footer.html
+ - https://web.archive.org/web/20200107155946/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/history.page.html
+ - https://web.archive.org/web/20200107162931/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/index.pages.html
+ - https://web.archive.org/web/20230314204244/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/gift.to.the.community.html
+ - https://web.archive.org/web/20211102185515/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/downloadable.weblet.html
+ - https://web.archive.org/web/20220120050151/http://www.rdrop.com/\~half/Creations/Writings/Web.patterns/site.map.html
+- Sally Rooney: When are we going to have the courage to stop the climate crisis?
+ - https://www.irishtimes.com/life-style/people/2024/11/23/sally-rooney-when-are-we-going-to-have-the-courage-to-stop-the-climate-crisis/
+- The Beautiful Mess: Can Do vs. Should Do
+ - https://cutlefish.substack.com/p/tbm-1652-can-do-vs-should-do
+- Manifesto for a Humane Web
+ - https://humanewebmanifesto.com/
+- SELinux is unmanageable; just turn it off if it gets in your way (it’s more nuanced than that, I promise -G)
+ - https://www.ctrl.blog/entry/selinux-unmanageable.html
+- programming is terrible: Write code that is easy to delete, not easy to extend
+ - https://programmingisterrible.com/post/139222674273/write-code-that-is-easy-to-delete-not-easy-to
+- The home as a place of production (not sure I totally agree w/ it, but an excellent read)
+ - https://cityquitters.substack.com/p/the-home-as-a-place-of-production
+- Habitat Chronicles - You Can’t Tell People Anything (2024-01-08)
+ - http://habitatchronicles.com/2004/04/you-cant-tell-people-anything/
+- JangaFX - The Atrocious State Of Binary Compatability on Linux and How To Address It (2025-03-17)
+ - https://jangafx.com/insights/linux-binary-compatibility
+
+
+# Favorite XKCDs
+
+- 356 - Nerd Sniping
+ - https://xkcd.com/356/
+- 927 - Standards
+ - https://xkcd.com/927/
+- 1172 - Workflow
+ - https://xkcd.com/1172/
+- 1425 - Tasks
+ - https://xkcd.com/1425/
+
+
+# 3D-Printing - Things
+
+- Universal Phone Stand - simple and classic, I use this at work
+ - https://www.thingiverse.com/thing:1464340
+- xkcd characters
+ - https://www.thingiverse.com/thing:1172630
+
+
+# Recipes
+
+- Apple Pie by Grandma Ople (made it)
+ - https://www.allrecipes.com/recipe/12682/apple-pie-by-grandma-ople/
+- Homemade Blueberry Pie (made it)
+ - https://www.allrecipes.com/recipe/12196/blueberry-pie/
+
+
+# Games
+
+- We Need To Talk - interesting split trick-taker (2025-01-30)
+ - https://spacebiff.com/2025/01/29/we-need-to-talk/
+
+
+# Tech Projects
+
+Tech projects that I found interesting, funny, or wanted to experiment with later.
+
+- LadyBird Browser
+ - https://github.com/LadybirdBrowser/ladybird
+- ScratchDB - Open-Source Snowflake on ClickHouse
+ - https://www.scratchdb.com/
+ - https://github.com/scratchdata/ScratchDB
+- COBOL for GCC Development #lang
+ - https://cobolworx.com/pages/cobforgcc.html
+- Bruno API Client
+ - https://www.usebruno.com/
+- Solar Protocol
+ - https://solarprotocol.net/
+- Trivy - open-source vulnerability scanner
+ - https://trivy.dev/latest/
+- Prowler - open-source cloud security scanner (2025-01-22)
+ - https://github.com/prowler-cloud/prowler
+ - https://docs.prowler.com/projects/prowler-open-source/en/latest/tutorials/mutelist/
+- SonarQube - automated code scanner w/ community edition (2025-01-22)
+ - https://github.com/SonarSource/sonarqube
+ - https://github.com/cnescatlab/sonar-cnes-report
+- Linux Mint: `webapp-manager` - run websites as if they were apps
+ - https://github.com/linuxmint/webapp-manager
+- Zed: Structured data queries for the CLI
+ - https://zed.brimdata.io/
+- Spacedrive: “A file explorer from the futureâ€
+ - https://github.com/spacedriveapp/spacedrive
+- Wasmer - WebAssembly-based run-anywhere containers
+ - https://github.com/wasmerio/wasmer
+- Kirby CMS (2025-01-13)
+ - https://getkirby.com/
+- Eleventy SSG (2025-01-27)
+ - https://www.11ty.dev/
+- DeepSeek R1 LLM - open weights (2025-01-26)
+ - https://github.com/deepseek-ai/DeepSeek-R1
+- iRedMail Mail Server - Releases (2025-01-29)
+ - https://docs.iredmail.org/iredmail.releases.html
+- KubeVirt - first-class virtualization on Kubernetes (2025-01-29)
+ - https://kubevirt.io/user-guide/
+- Bash++ — object-oriented Bash (2025-02-24)
+ - https://bpp.sh/
+- Catala - describing legislation as code (2025-02-24)
+ - https://catala-lang.org/en/
+- GNOME Extensions
+ - https://extensions.gnome.org/extension/4839/clipboard-history/
+
+
+# Misc. Other Projects
+
+- JPL’s Small-Body Mission Design Tool (2025-02-24)
+ - https://ssd.jpl.nasa.gov/tools/mdesign.html#/accessible/ballistic
+
+
+# Self-Hosting TODOs
+
+- Kiwix — offline knowledge bases like Wikipedia (2025-01-29)
+ - https://kiwix.org/en/applications/
+ - https://flathub.org/apps/org.kiwix.desktop
+ - https://library.kiwix.org/#lang=eng
+- Pinchflat — YouTube media manager (2025-01-29)
+ - https://github.com/kieraneglin/pinchflat
+- Audiobookshelf - Self hosted podcast server with app. (2025-03-03)
+ - https://github.com/advplyr/audiobookshelf?tab=readme-ov-file
+- Matrix / Element chat server (2025-03-18)
+ - https://matrix.org/ecosystem/clients/element/
+- ChangeDetection.io — website change detection (2025-03-18)
+ - https://changedetection.io/
+- Duplicati — centralized backup manager (2025-03-18)
+ - https://duplicati.com/
+- HomeBox — Home inventory tracker (2025-03-18)
+ - https://homebox.software/en/
+
+
+# Issue Tracking
+
+- Jellyfin - multi-backend DB support (e.g. to run against Postgres instead of SQLite)
+ - https://github.com/jellyfin/jellyfin/pull/12798
+- Fedora - full SELinux relabel after every update (2025-02-24)
+ - https://discussion.fedoraproject.org/t/full-selinux-re-label-after-every-dnf-update/145900
+ - https://bugzilla.redhat.com/show_bug.cgi?id=2326999
+ - https://bugzilla.redhat.com/show_bug.cgi?id=2318279
+- TODO - Eleventy Pug plugin — add support for `renderFile` shortcode like the `RenderFile` plugin (2025-03-21)
+ - https://github.com/11ty/eleventy/blob/3ae32242085f707fe1a8996bca994728c62c6297/src/Plugins/RenderPlugin.js#L140
+ - https://github.com/11ty/eleventy-plugin-template-languages/tree/main/pug
+- Thinkpad X1 Carbon 13th Gen - Missing Sleep State BIOS Setting (2025-03-21)
+ - https://askubuntu.com/questions/1398674/battery-drain-during-suspend-mode-when-lid-is-closed-20-in-8-hours
+ - https://askubuntu.com/questions/1469680/how-to-change-sys-power-mem-sleep-nothing-is-able-to-change-it-and-all-advice
+
+
+# Technical Guides
+
+- EV Code Certificates + Automated Builds for Windows
+ - https://medium.com/@joshualipson/ev-code-certificates-automated-builds-for-windows-6100fb8e8be6
+- ARM Gen 6 on the Thinkpad T14s
+ - https://github.com/jhovold/linux/wiki/t14s
+ - https://fedoraproject.org/wiki/Thinkpad_t14s
+ - https://discourse.ubuntu.com/t/ubuntu-24-10-concept-snapdragon-x-elite/48800
+- AWS - Programmatic Access to EKS Versions #aws
+ - https://aws.amazon.com/about-aws/whats-new/2024/12/amazon-eks-access-kubernetes-version-availability/
+- From Zero to main(): Bare metal C
+ - https://interrupt.memfault.com/blog/zero-to-main-1
+- The Derivative of a Regular Type is its Type of One-Hole Contexts - Conor McBride
+ - http://strictlypositive.org/diff.pdf
+- Let’s build a distributed Postgres proof of concept
+ - https://notes.eatonphil.com/distributed-postgres.html
+- Comby: structural refactoring tool
+ - https://comby.dev/
+- Production Ready EKS CoreDNS Configuration (because the default config is stupid -G) #aws
+ - https://serkancapkan.medium.com/production-ready-eks-coredns-configuration-6fea830606f8
+- COMMON-LISP “The Tutorial†Series (Learn CLOG)
+ - https://github.com/rabbibotton/clog/blob/main/LEARN.md
+- DKIM - RFCs and notes on how to verify signatures in code (2024-01-08)
+ - https://github.com/kmille/dkim-verify/blob/master/verify-dkim.py
+ - https://datatracker.ietf.org/doc/html/rfc6376#section-3.4
+ - https://datatracker.ietf.org/doc/html/rfc6376#section-3.6.1
+ - https://datatracker.ietf.org/doc/html/rfc6376#section-3.6.2.2
+ - https://code.garrettmills.dev/garrettmills/chorus/src/branch/main/src/dkim.ts
+- Dynamic Dependency Injection in Angular (2025-01-27)
+ - https://www.damirscorner.com/blog/posts/20170526-DynamicDependencyInjectionInAngular.html
+- Running DeepSeek R1 locally (2025-01-28)
+ - https://www.reddit.com/r/selfhosted/s/PlczKBukhy
+- How to Delete the Recovery Partition in Windows 10 (works for 11) (2025-03-20)
+ - https://superuser.com/questions/1023765/how-to-delete-the-recovery-partition-in-windows-10/1824309#1824309
+- Local LLM utilizing Intel NPU (2025-03-21)
+ - https://copr.fedorainfracloud.org/coprs/xanderlent/intel-npu-driver
+ - https://discussion.fedoraproject.org/t/figuring-out-npu-support-in-fedora/143717/2
+ - https://huggingface.co/blog/phi2-intel-meteor-lake
+ - https://github.com/google/mozc/issues/742
+- Very-Simple SCORM — an incredible guide to implementing SCORM 1.2 (2025-03-24)
+ - http://www.vsscorm.net/page/9/
+
+
+# Quotes
+
+- Richard II - “You wretches detestable on land and sea…â€
+ - https://en.wikiquote.org/wiki/Richard_II_of_England#Quotes
+
+
+# Soft Skills That Aren't BS
+
+- The Art of Calling Out Room Dynamics (2025-02-03)
+ - https://leadership.garden/calling-out-room-dynamics/
+
+
+# All About MarkMark
+
+Links, resources, and tools related to MarkMark itself. (*[What's MarkMark?](https://garrettmills.dev/markmark)*)
+
+- Standard MarkMark (v1.1)
+ - https://garrettmills.dev/markmark
+ - https://garrettmills.dev/markmark/standard
+- `mark-mark`: a WIP TypeScript MarkMark parser/renderer collection
+ - https://code.garrettmills.dev/garrettmills/www/src/branch/master/src/markmark
\ No newline at end of file
diff --git a/src/markmark/index.md b/src/markmark/index.md
new file mode 100644
index 0000000..17116b1
--- /dev/null
+++ b/src/markmark/index.md
@@ -0,0 +1,41 @@
+---
+layout: markmark
+permalink: /markmark/
+---
+
+MarkMark is a free ([as in freedom](https://en.wikipedia.org/wiki/Free_as_in_Freedom)) bookmark format designed to be machine-readable and easy to use.
+
+The goal of MarkMark is to standardize "link sharing" pages to build connections between small websites on the Internet.
+
+You can view the [full standard here](/markmark/standard).
+
+MarkMark was inspired by the post [_The Small Website Discoverability Crisis_](https://www.marginalia.nu/log/19-website-discoverability-crisis/) on the Marginalia blog.
+
+# Example
+
+```markdown
+[//]: #(markmark-syntax: v1)
+[//]: #(markmark-author-name: Garrett Mills)
+[//]: #(markmark-author-email: shout@garrettmills.dev)
+[//]: #(markmark-author-href: https://garrettmills.dev/)
+
+# My Sites
+
+Here are links to various sites created by yours truly.
+
+- Garrett Mills
+ - https://garrettmills.dev/
+
+- My Code
+ - https://code.garrettmills.dev/garrettmills
+
+- Post: Mitigating CVE-2024-2961 (2024-04-22) #blog
+ - https://garrettmills.dev/blog/2024/04/22/Mitigating-the-iconv-Vulnerability-for-PHP-CVE-2024-2961
+```
+
+# Resources
+
+- [Spec: Standard MarkMark (v1.0)](/markmark/standard)
+- MarkMark Icons ([Light](/assets/markmark-light.svg), [Dark](https://garrettmills.dev/assets/markmark-dark.svg))
+- [`mark-mark`: a TypeScript MarkMark parser/renderer collection](https://code.garrettmills.dev/garrettmills/www/src/branch/master/src/markmark)
+ - Heads up! Unlike the MarkMark Spec, the `mark-mark` library is licensed CC BY-NC-SA 4.0. [Learn more.](/technical/#source-code-and-licensing)
diff --git a/src/markmark/standard.md b/src/markmark/standard.md
new file mode 100644
index 0000000..7714d94
--- /dev/null
+++ b/src/markmark/standard.md
@@ -0,0 +1,163 @@
+---
+layout: markmark
+permalink: /markmark/standard/
+---
+
+**MarkMark is an extremely simple, standard, plain-text format for collecting bookmarks in such a way that they can be shared and federated.**
+
+## File Format & Rel-Links
+
+MarkMark files SHOULD be stored as plain-text Markdown files with the extension `.mark.md`.
+
+Example: `john-doe.mark.md`
+
+You MAY refer to a MarkMark file in the `
` tag of an HTML document as you would with, for example, and RSS feed using the media type `text/markdown;variant=markmark`. This media type is derived from [RFC 7763](https://www.rfc-editor.org/rfc/rfc7763).
+
+Example:
+```html
+
+```
+
+## Syntax
+
+MarkMark is a subset of Markdown (specifically [CommonMark](https://spec.commonmark.org/)) designed to render properly in vanilla Markdown clients.
+
+```text
+MARKMARK := FRONTMATTER \n LINES
+
+LINES :=
+ LINE LINES
+ | LINE EOF
+ | EOF
+
+LINE := SECTION | LINK
+```
+
+### Frontmatter
+
+```txt
+FRONTMATTER := \n [//]: # (FRONTMATTER_VALUE)
+
+FRONTMATTER_VALUE :=
+ markmark-syntax: v1
+ | markmark-author-name: STRING
+ | markmark-author-email: STRING
+ | markmark-author-href: STRING
+```
+
+MarkMark uses a subset of Markdown Link Reference Definitions (CommonMark §4.7) to add MarkMark-specific metadata to the file. These values MUST appear at the top of the file. These values SHOULD be provided. The first FrontMatter item MUST be prefixed with a newline character (`\n`). You MAY prefix subsequent FrontMatter items with a newline character (`\n`). You MUST suffix the last FrontMatter item with a newline character (`\n`).
+
+#### Supported Properties
+
+- `markmark-syntax` - The MarkMark spec version (supported values: `v1`)
+- `markmark-author-name` - The name of the author of this bookmark collection
+- `markmark-author-email` - The email address of the author
+- `markmark-author-href` - The URL of the author's website
+
+#### Example
+
+```markdown
+
+[//]: # (markmark-syntax: v1)
+[//]: # (markmark-author-name: John Doe)
+[//]: # (markmark-author-email: john.doe@example.com)
+[//]: # (markmark-author-href: https://john-doe.example.com/)
+```
+
+### Sections
+
+```text
+SECTION := # STRING
+ | # STRING \n STRING
+```
+
+In MarkMark, authors MAY organize their bookmarks into sections. These sections MUST be indicated using a Markdown Heading 1 syntax (CommonMark §4.2) and MAY be followed by a Markdown Paragraph (CommonMark §4.8) describing the section.
+
+#### Example
+
+```markdown
+# Technical Blogs
+
+This is a description of the Technical Blogs section in my MarkMark file.
+```
+
+### Links
+
+```text
+LINK :=
+ - STRING DATE TAGS\nINDENT HREFS
+
+DATE := (ISO8601) | EOL
+
+TAGS :=
+ TAG TAGS
+ | EOL
+
+TAG := #SLUG
+
+INDENT := ␣␣␣␣ | \t
+
+HREFS :=
+ - URL
+ | - [URL](URL)
+```
+
+Links are individual entries in a bookmark collection and represent a bookmark title and one or more URLs relevant to that bookmark. These URLs SHOULD be limited to less than 5.
+
+A link is a Markdown Bullet List item (CommonMark §5.2) with a sub-list of URLs. Each URL MUST be either a plain-text URL OR a Markdown Link (CommonMark §6.3). Markdown Link URLs MUST use the URL as the only text for the link.
+
+#### Dates (v1.1)
+
+Each link MAY have one date associated with it. The date associated with a link SHOULD refer to the date the link was accessed by the author and added to the collection. The date MAY refer to the publication date of the associated media.
+
+Dates MUST be in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#Calendar_dates) format and MUST minimally include the year, month, and day.
+
+#### Tags
+
+Each link MAY have one or more tags associated with it. Tags provide an additional organizational scheme as they can be used to associate links across sections.
+
+Tags are composed of a `#`-sign followed by a slug composed of alpha-numeric-underscore-dash `a-zA-Z0-9_\-` characters. Multiple tags MUST be separated by one or more space characters.
+
+If a link has tags, those tags MUST appear at the end of the line containing the link's title, after one or more space characters.
+
+#### Example
+
+```markdown
+- My Blog #personal-site #blog
+ - https://john-doe.example.com/blog
+- Jane's Blog #blogs
+ - https://jane-doe.example.com/blog
+- Example.com
+ - [https://example.com](https://example.com)
+```
+
+## Full Example
+
+```markdown
+
+[//]: # (markmark-syntax: v1)
+[//]: # (markmark-author-name: John Doe)
+[//]: # (markmark-author-email: john.doe@example.com)
+[//]: # (markmark-author-href: https://john-doe.example.com/)
+
+# Doe-Family Sites
+
+Here is a collection of personal blogs and homepages from members of the Doe family.
+
+- My Blog #personal-site #blog
+ - https://john-doe.example.com/blog
+- Jane's Blog #blogs
+ - https://jane-doe.example.com/blog
+- Example.com
+ - [https://example.com](https://example.com)
+```
+
+## License
+
+[Standard MarkMark](https://garrettmills.dev/markmark) by [Garrett Mills](https://garrettmills.dev/) is marked with [CC0 1.0 Universal](http://creativecommons.org/publicdomain/zero/1.0?ref=chooser-v1).
+
+
+## Change Log
+
+- `v1.1`: Added spec for optional dates
+- `v1.0`: Initial Standard