{"id":25039552,"url":"https://github.com/kkestell/md","last_synced_at":"2026-05-07T01:37:04.438Z","repository":{"id":250358566,"uuid":"756495708","full_name":"kkestell/md","owner":"kkestell","description":"Quickly converts a simplified dialect of Markdown to HTML","archived":false,"fork":false,"pushed_at":"2024-07-26T18:27:46.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-23T05:46:38.825Z","etag":null,"topics":["c","html","markdown","utf-8"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kkestell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-12T19:21:40.000Z","updated_at":"2024-09-27T07:21:25.000Z","dependencies_parsed_at":"2024-07-26T20:40:01.583Z","dependency_job_id":null,"html_url":"https://github.com/kkestell/md","commit_stats":null,"previous_names":["kkestell/md"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kkestell/md","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkestell%2Fmd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkestell%2Fmd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkestell%2Fmd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkestell%2Fmd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kkestell","download_url":"https://codeload.github.com/kkestell/md/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkestell%2Fmd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32719573,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T00:29:05.620Z","status":"ssl_error","status_checked_at":"2026-05-07T00:28:57.074Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","html","markdown","utf-8"],"created_at":"2025-02-06T02:52:27.040Z","updated_at":"2026-05-07T01:37:04.423Z","avatar_url":"https://github.com/kkestell.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `md`\n\nQuickly converts a simplified dialect of Markdown to HTML.\n\n## Features\n\n* Minimal dependencies\n* Reasonably fast (~2 million lines per second on an i7-10700K)\n* No runtime memory allocation\n* UTF-8 support\n* Simplified Markdown dialect\n  * Headers\n  * Paragraphs\n  * Inline formatting: bold, italic, code\n  * Hyperlinks\n  * Ordered and unordered lists\n  * Multi-line blockquotes\n  * Code blocks\n  * Tables\n  * Horizontal rules\n  * Embedded HTML\n\n## Usage\n\n```\nmd [-i input_file] [-o output_file]\n```\n\nIf `-i` is not specified, `md` reads from `stdin`. If `-o` is not specified, `md` writes to `stdout`.\n\n## Example\n\n### Markdown\n\n~~~\n# Header 1\n\n## Header 2\n\n### Header 3\n\n#### Header 4\n\n##### Header 5\n\n###### Header 6\n\nParagraphs are *separated by a _blank_ line*.\nSingle `newlines are treated as line breaks`. Separate ![https://www.google.com/](block elements) with a blank line.\n\n* This is a list item\n* This is another list item\n\n### Tables\n\n| Name | Price |\n|------|-------|\n| A    | 1     |\n| B    | 2     |\n| C    | 3     |\n\n## UTF-8\n\n∮ E⋅da = Q,  n → ∞, ∑ f(i) = ∏ g(i), ∀x∈ℝ: ⌈x⌉ = −⌊−x⌋, α ∧ ¬β = ¬(¬α ∨ β),\n\nℕ ⊆ ℕ₀ ⊂ ℤ ⊂ ℚ ⊂ ℝ ⊂ ℂ, ⊥ \u003c a ≠ b ≡ c ≤ d ≪ ⊤ ⇒ (A ⇔ B),\n\n2H₂ + O₂ ⇌ 2H₂O, R = 4.7 kΩ, ⌀ 200 mm\n\n((V⍳V)=⍳⍴V)/V←,V ←⍳→⍴∆∇⊃‾⍎⍕⌈\n\n### Multibyte Characters\n\n中英文均可混在⼀起 한국어조차도 가능합니다.\n\n\u003e “The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.”\n\u003e ― Frederick P. Brooks\n\n1. This is a numbered list item\n2. This is another numbered list item\n\n```\ndef hello_world():\n    print(\"Hello World!\")\n```\n\n\u003ctable border=\"1\"\u003e\n    \u003ctr\u003e\n        \u003ctd\u003eHello\u003c/td\u003e\n        \u003ctd\u003eWorld\u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n~~~\n\n### HTML\n\n```\n\u003ch1\u003eHeader 1\u003c/h1\u003e\n\u003ch2\u003eHeader 2\u003c/h2\u003e\n\u003ch3\u003eHeader 3\u003c/h3\u003e\n\u003ch4\u003eHeader 4\u003c/h4\u003e\n\u003ch5\u003eHeader 5\u003c/h5\u003e\n\u003ch6\u003eHeader 6\u003c/h6\u003e\n\u003cp\u003eParagraphs are \u003cb\u003eseparated by a \u003ci\u003eblank\u003c/i\u003e line\u003c/b\u003e.\u003cbr\u003eSingle \u003ccode\u003enewlines are treated as line breaks\u003c/code\u003e. Separate \u003ca href=\"https://www.google.com/\"\u003eblock elements\u003c/a\u003e with a blank line.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThis is a list item\u003c/li\u003e\n\u003cli\u003eThis is another list item\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eTables\u003c/h3\u003e\n\u003ctable\u003e\n\u003ctr\u003e\u003ctd\u003eName\u003c/td\u003e\u003ctd\u003ePrice\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003eA\u003c/td\u003e\u003ctd\u003e1\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003eB\u003c/td\u003e\u003ctd\u003e2\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003eC\u003c/td\u003e\u003ctd\u003e3\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e\n\u003ch2\u003eUTF-8\u003c/h2\u003e\n\u003cp\u003e∮ E⋅da = Q,  n → ∞, ∑ f(i) = ∏ g(i), ∀x∈ℝ: ⌈x⌉ = −⌊−x⌋, α ∧ ¬β = ¬(¬α ∨ β),\u003c/p\u003e\n\u003cp\u003eℕ ⊆ ℕ₀ ⊂ ℤ ⊂ ℚ ⊂ ℝ ⊂ ℂ, ⊥ \u003c a ≠ b ≡ c ≤ d ≪ ⊤ ⇒ (A ⇔ B),\u003c/p\u003e\n\u003cp\u003e2H₂ + O₂ ⇌ 2H₂O, R = 4.7 kΩ, ⌀ 200 mm\u003c/p\u003e\n\u003cp\u003e((V⍳V)=⍳⍴V)/V←,V ←⍳→⍴∆∇⊃‾⍎⍕⌈\u003c/p\u003e\n\u003ch3\u003eMultibyte Characters\u003c/h3\u003e\n\u003cp\u003e中英文均可混在⼀起 한국어조차도 가능합니다.\u003c/p\u003e\n\u003cblockquote\u003e“The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures.”\u003cbr\u003e― Frederick P. Brooks\u003c/blockquote\u003e\n\u003col\u003e\n\u003cli\u003eThis is a numbered list item\u003c/li\u003e\n\u003cli\u003eThis is another numbered list item\u003c/li\u003e\n\u003c/ol\u003e\n\u003cpre\u003e\u003ccode\u003edef hello_world():\n    print(\"Hello World!\")\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable border=\"1\"\u003e\n    \u003ctr\u003e\n        \u003ctd\u003eHello\u003c/td\u003e\n        \u003ctd\u003eWorld\u003c/td\u003e\n    \u003c/tr\u003e\n\u003c/table\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkestell%2Fmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkkestell%2Fmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkestell%2Fmd/lists"}