{"id":13724492,"url":"https://github.com/leebyron/spec-md","last_synced_at":"2025-04-06T18:13:18.815Z","repository":{"id":29735366,"uuid":"33278727","full_name":"leebyron/spec-md","owner":"leebyron","description":"📖 Additions to Markdown for writing specification documents","archived":false,"fork":false,"pushed_at":"2023-01-12T23:59:51.000Z","size":1400,"stargazers_count":391,"open_issues_count":5,"forks_count":49,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-03-30T17:08:09.131Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://spec-md.com","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leebyron.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-01T23:39:09.000Z","updated_at":"2025-02-14T15:52:08.000Z","dependencies_parsed_at":"2023-01-14T15:33:27.197Z","dependency_job_id":null,"html_url":"https://github.com/leebyron/spec-md","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leebyron%2Fspec-md","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leebyron%2Fspec-md/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leebyron%2Fspec-md/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leebyron%2Fspec-md/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leebyron","download_url":"https://codeload.github.com/leebyron/spec-md/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526753,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-08-03T01:01:58.166Z","updated_at":"2025-04-06T18:13:18.795Z","avatar_url":"https://github.com/leebyron.png","language":"HTML","funding_links":[],"categories":["HTML"],"sub_categories":[],"readme":"# Spec Markdown\n\nRenders Markdown with some additions into an HTML format commonly used for\nwriting technical specification documents. Markdown additions include code\nsyntax highlighting, edit annotations, and the definition of algorithms and\ngrammar productions.\n\n**Philosophy**\n\nSpec Markdown is first and foremost Markdown. As such, it follows Markdown's\nphilosophy of intending to be as easy to read and easy to write as is feasible.\n\nIn order to interoperate with other tools which use Markdown, Spec Markdown\ntries to add as little additional syntax as possible, instead preferring\nconventions. This means any documents written with Spec Markdown in mind should\nrender adequately by other Markdown renderers.\n\nTo support the rendering additions of Spec Markdown, some features of Markdown\nmay be limited or removed. As an example, Spec Markdown is strict about the\norder and locations of headers in a document.\n\nNote: This is not a normative spec for Spec Markdown, but just documentation of\nthis tool. Of course, written in Spec Markdown!\n\n\n# Getting Started\n\nTo use Spec Markdown, just write Markdown files. There are some conventions used\nby Spec Markdown which you can read about in [Spec additions](./spec/Spec%20Additions.md#Spec-Additions).\n\nTo convert your Markdown files into an HTML spec document, use the `spec-md`\nutility.\n\n```sh\nnpm install -g spec-md\nspec-md ./path/to/markdown.md \u003e ./path/to/output.html\n```\n\nYou can also require `spec-md` as a node module.\n\n```sh\nnpm install --save-dev spec-md\n```\n\n```js\nconst fs = require('fs');\nconst specMarkdown = require('spec-md');\nspecMarkdown.html('./path/to/markdown.md').then(html =\u003e {\n  fs.writeFile('./path/to/output.html', html);\n});\n```\n\nSpec Markdown also provides utilities for generating and operating on an\nintermediate representation of the markdown, which you can explore in\n[Using Spec Markdown](./spec/Usage.md#Using-Spec-Markdown).\n\n\n# [Markdown](./spec/Markdown.md)\n\n# [Spec additions](./spec/Spec%20Additions.md)\n\n# [Using Spec Markdown](./spec/Usage.md)\n\n# [Contributing](./CONTRIBUTING.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleebyron%2Fspec-md","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleebyron%2Fspec-md","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleebyron%2Fspec-md/lists"}