{"id":17445981,"url":"https://github.com/jamen/arthur","last_synced_at":"2025-10-29T21:36:45.143Z","repository":{"id":57494785,"uuid":"247445448","full_name":"jamen/arthur","owner":"jamen","description":"Make markdown articles into static web pages.","archived":false,"fork":false,"pushed_at":"2021-09-24T10:56:42.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-09T09:03:01.888Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jamen.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}},"created_at":"2020-03-15T10:36:00.000Z","updated_at":"2021-12-19T15:23:19.000Z","dependencies_parsed_at":"2022-08-28T19:40:22.775Z","dependency_job_id":null,"html_url":"https://github.com/jamen/arthur","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamen%2Farthur","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamen%2Farthur/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamen%2Farthur/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jamen%2Farthur/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jamen","download_url":"https://codeload.github.com/jamen/arthur/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246803032,"owners_count":20836472,"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-10-17T18:19:36.925Z","updated_at":"2025-10-29T21:36:45.031Z","avatar_url":"https://github.com/jamen.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Archive Notice\n\nDiscontinuing this. I ended up using [Zola](https://www.getzola.org/) instead. But this is pretty much finished if you find yourself curious.\n\n# arthur\n\nMake markdown articles into static web pages.\n\n## Install\n\nYou can install with cargo:\n\n```\ncargo install arthur\n```\n\n## Usage\n\n```\nUSAGE:\n    arthur [FLAGS] --input \u003cinput\u003e --output \u003coutput\u003e --template \u003ctemplate\u003e\n\nFLAGS:\n    -h, --help         Prints help information\n    -D, --no-digest    Disable JSON digests for listing articles on pages.\n    -G, --no-gfm       Disable Github-flavored markdown.\n    -M, --no-media     Disable copying files in source directory.\n    -V, --version      Prints version information\n\nOPTIONS:\n    -i, --input \u003cinput\u003e          Input directory with markdown articles and media.\n    -o, --output \u003coutput\u003e        Output directory.\n    -t, --template \u003ctemplate\u003e    HTML template.\n```\n\nThe setup is simple. Have a directory of markdown and images like:\n\n```\narticles/\n    index.md\n    hello-world.md\n    media/\n        image.png\nsrc/\n    template.html\n```\n\nAnd it compiles to:\n\n```\nout/\n    digest0.json\n    index.html\n    hello-world.html\n    media/\n        image.png\n```\n\nBy using the command\n\n```\narthur --input articles --template src/template.html --output out\n```\n\n### Metadata\n\nMetadata is given at the top at the top of articles in [YAML](https://en.wikipedia.org/wiki/YAML). Its used specifying the author, dates, tags, or whatever you want to use in your template.\n\n```\n---\ntitle: Hello world\nauthor: John Doe\ntags: [ example, test ]\n---\n\n# Hello world\n\nLorem ipsum incididunt dolor dolor sit exercitation anim, nostrud ipsum laboris officia consectetur.\n```\n\n### Template\n\nArticles are rendered with a Handlebars template ([1](https://github.com/sunng87/handlebars-rust), [2](https://handlebarsjs.com/)) into HTML.\n\nThe template has the variables `article`, `url`, and each article's metadata.\n\n```\n\u003ch1\u003e{{title}} by {{author}}\u003c/h1\u003e\n\u003cdiv\u003e{{{article}}}\u003c/div\u003e\n```\n\nThe rendered HTML is displayed with `{{{article}}}`.\n\nUse `url` to create distinguished pages, like the home page.\n\n### Digest\n\nDigests are JSON files available to other pages for listing the articles. Each digest item contains a summary and metadata. It can be disabled with `-D`, `--no-digest`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamen%2Farthur","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjamen%2Farthur","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamen%2Farthur/lists"}