{"id":14966197,"url":"https://github.com/zag/js-pod6","last_synced_at":"2026-03-27T04:51:14.782Z","repository":{"id":36619905,"uuid":"229100999","full_name":"zag/js-pod6","owner":"zag","description":"Pod6 is an easy-to-use markup language. It can be used for writing language documentation, for documenting programs and modules, as well as for other types of document composition","archived":false,"fork":false,"pushed_at":"2023-12-17T17:27:29.000Z","size":2303,"stargazers_count":10,"open_issues_count":17,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-02T03:10:20.420Z","etag":null,"topics":["markup-language","pod6","podlite","raku-pod","rakudoc","rakulang","rakupod"],"latest_commit_sha":null,"homepage":"https://pod6.in","language":"TypeScript","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/zag.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2019-12-19T16:59:44.000Z","updated_at":"2024-12-13T06:08:21.000Z","dependencies_parsed_at":"2024-06-21T02:16:13.092Z","dependency_job_id":"047596c2-193b-41e6-bb6c-0dac3d7eac23","html_url":"https://github.com/zag/js-pod6","commit_stats":{"total_commits":254,"total_committers":2,"mean_commits":127.0,"dds":0.003937007874015741,"last_synced_commit":"04fdd3b91e0fc0635d884fcdd1b47d426dccae23"},"previous_names":[],"tags_count":50,"template":false,"template_full_name":null,"purl":"pkg:github/zag/js-pod6","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zag%2Fjs-pod6","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zag%2Fjs-pod6/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zag%2Fjs-pod6/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zag%2Fjs-pod6/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zag","download_url":"https://codeload.github.com/zag/js-pod6/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zag%2Fjs-pod6/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279017037,"owners_count":26085951,"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","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["markup-language","pod6","podlite","raku-pod","rakudoc","rakulang","rakupod"],"created_at":"2024-09-24T13:35:59.496Z","updated_at":"2025-10-13T21:35:26.132Z","avatar_url":"https://github.com/zag.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pod6\n\nPod6 is an easy-to-use markup language.\n\n## Usage\n\n```\nyarn add pod6\n```\nExport to *html*:\n\n```\nvar toHtml = require('pod6').toHtml\ntoHtml().run(`=begin pod\n This is an ordinary paragraph\n=end pod`)\n```\n\nGet parser's *tree*:\n\n```\n var parse = require('pod6').parse\n var tree =  parse(`=begin pod\n This is an ordinary paragraph\n\n    While this is not\n    This is a code block\n    \n    =head1 Mumble mumble\n    \n    Suprisingly, this is not a code block\n        (with fancy indentation too)\n\nBut this is just a text. Again\n\n=end pod`)\n```\n\nConvert pod6 from cli:\n\n```\nnpx -p pod6 pod6html \u003c example.pod6 \u003e example.html\n```\n\nTest [Pod6 online at https://pod6.in](https://pod6.in)\n\n\n### Pod configuration\n\nExample of configuration information for the block:\n\n```\n=begin pod\n=for DESCRIPTION :title\u003cpresentation template\u003e\n=                :author\u003cJohn Brown\u003e :pubdate(2011)\n=end pod\n```\n\nThis information is used in different ways by different types of blocks,\nbut is always specified using Raku-ish option pairs [2]. That is, any of:\n\n\n```\nValue is...       Specify with...           Or with...            Or with...\n===============   =======================   =================   ===========\nList              :key[$e1,$e2,...]         :key($e1,$e2,...)\nList              :key\u003c1 2 3\u003e                :key[1,2,3]       key =\u003e [1,2,3]\nHash              :key{$k1=\u003e$v1,$k2=\u003e$v2}\nBoolean (true)    :key                      :key(True)\nBoolean (false)   :!key                     :key(False)\nString            :key\u003cstr\u003e                 :key('str')         :key(\"str\")\nNumber            :key(42)                  :key(2.3) \n```\n\nFor example:\n\n```\n=begin table :k1(2.3) :k2[-2.3] :k3[+1e4] :k4(3.1e+04) :k5[-3.1E-04]\nfoo\n=end table\n```\nor \n\n```\n=begin table :k1{a =\u003e 1, 2 =\u003e 'b', c =\u003e True, d =\u003e 2.3, e =\u003e False}\nfoo\n=end table\n```\n\n### Tables\n\n```\n=begin table\n        The Shoveller   Eddie Stevens     King Arthur's singing shovel\n        Blue Raja       Geoffrey Smith    Master of cutlery\n        Mr Furious      Roy Orson         Ticking time bomb of fury\n        The Bowler      Carol Pinnsler    Haunted bowling ball\n=end table\n```\n\n```\n=table\n    Constants           1\n    Variables           10\n    Subroutines         33\n    Everything else     57\n```\n\n```\n=for table\n    mouse    | mice\n    horse    | horses\n    elephant | elephants\n```\n\n```\n=table\n    Animal | Legs |    Eats\n    =======================\n    Zebra  +   4  + Cookies\n    Human  +   2  +   Pizza\n    Shark  +   0  +    Fish\n```\n\n```\n=table\n        Superhero     | Secret          |\n                      | Identity        | Superpower\n        ==============|=================|================================\n        The Shoveller | Eddie Stevens   | King Arthur's singing shovel\n```\n\n```\n=begin table :caption('Super table')\n                        Secret\n        Superhero       Identity          Superpower\n        =============   ===============   ===================\n        The Shoveller   Eddie Stevens     King Arthur's\n                                          singing shovel\n\n        Blue Raja       Geoffrey Smith    Master of cutlery\n\n        Mr Furious      Roy Orson         Ticking time bomb\n                                          of fury\n\n        The Bowler      Carol Pinnsler    Haunted bowling ball\n\n=end table\n```\n\n```\n=table\n    X | O |\n   ---+---+---\n      | X | O\n   ---+---+---\n      |   | X\n```\n\n```\n=table\n    X   O\n   ===========\n        X   O\n   ===========\n            X\n```\n## Macro aliases\n\nThe `=alias` directive provides a way to define lexically scoped\nsynonyms for longer Pod sequences, (meta) object declarators from the\ncode, or even entire chunks of ambient source. These synonyms can then\nbe inserted into subsequent Pod using the `A\u003c\u003e`\n\nFor example:\n\n    =alias PROGNAME    Earl Irradiatem Evermore\n    =alias VENDOR      4D Kingdoms\n    =alias TERMS_URLS  =item L\u003chttp://www.4dk.com/eie\u003e\n    =                  =item L\u003chttp://www.4dk.co.uk/eie.io/\u003e\n    =                  =item L\u003chttp://www.fordecay.ch/canttouchthis\u003e\n    \n    The use of A\u003cPROGNAME\u003e is subject to the terms and conditions\n    \tlaid out by A\u003cVENDOR\u003e, as specified at:\n    \n    A\u003cTERMS_URLS\u003e\n\n## Try pod6 online\n\nYou can test pod6 at [pod6.in](https://pod6.in) site.\nI'd appreciate it if you'd report any mistakes to the tracker[4]\n\n## Desktop version\n\nDesktop version of pod6 editor - [Podlite](https://github.com/zag/podlite-desktop) is available also [5].\nIts free.\n\n## Authors\n\njs-pod6 was written by [Alexandr Zahatski](https://github.com/zag)\n\n## Copyright\n\nCopyright (C) 2019-2023 [Alexandr Zahatski](https://zahatski.com).\nFree use of this software is granted under the terms of the MIT License.\n\nFor the full text of the license, see the [LICENSE](https://github.com/zag/js-pod6/blob/master/LICENSE) file. \n\n## Links \n\n[1] Specification of pod6: [Synopsis 26](https://github.com/perl6/specs/blob/master/S26-documentation.pod) \n\n[2] Synopsis 2: [Bits and Pieces](https://github.com/Raku/old-design-docs/blob/master/S02-bits.pod)\n\n[3] Pod6 online editor: [pod6 online editor](https://pod6.in)\n\n[4] pod6 issues tracker: [https://github.com/zag/js-pod6/issues](https://github.com/zag/js-pod6/issues) \n\n[5] Free and open-sourced desktop pod6 editor: [Podlite](https://github.com/zag/podlite-desktop)\n\n```\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzag%2Fjs-pod6","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzag%2Fjs-pod6","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzag%2Fjs-pod6/lists"}