{"id":15502974,"url":"https://github.com/evuez/kiwi","last_synced_at":"2026-05-17T00:02:19.434Z","repository":{"id":71118785,"uuid":"306613076","full_name":"evuez/kiwi","owner":"evuez","description":"A (dirty) Haskell blog generator","archived":false,"fork":false,"pushed_at":"2020-12-23T13:07:56.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-19T17:30:23.906Z","etag":null,"topics":["hacktoberfest","markdown","static-site-generator"],"latest_commit_sha":null,"homepage":"","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evuez.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":"2020-10-23T11:15:32.000Z","updated_at":"2021-10-02T14:09:36.000Z","dependencies_parsed_at":"2023-06-02T20:30:45.387Z","dependency_job_id":null,"html_url":"https://github.com/evuez/kiwi","commit_stats":{"total_commits":4,"total_committers":1,"mean_commits":4.0,"dds":0.0,"last_synced_commit":"92a4b58f1f232d0e82faa41eeddc9d0b3d3188b3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fkiwi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fkiwi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fkiwi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evuez%2Fkiwi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evuez","download_url":"https://codeload.github.com/evuez/kiwi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246077515,"owners_count":20720007,"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":["hacktoberfest","markdown","static-site-generator"],"created_at":"2024-10-02T09:11:43.894Z","updated_at":"2025-10-19T01:36:20.303Z","avatar_url":"https://github.com/evuez.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kiwi\n\nA (dirty) Haskell blog generator.\n\nI'm using this for my [own site](https://liftm.io/) (repo here: https://github.com/evuez/evuez.github.io).\n\nSetting it up is pretty simple, install it with `stack install`, then create a `kiwi.toml` file:\n\n```toml\n[templates]\nindex = \"templates/index.html\"\npages = \"templates/page.html\"\n\n[[source]]\nname = \"Posts\"\npath = \"posts\"\n\n[[source]]\nname = \"Projects\"\npath = \"projects\"\n```\n\nThe `index` template is used to generate the... index of the site, and `pages` is used for any other page. These use [mustache](https://mustache.github.io/). Templates examples are available here: https://github.com/evuez/evuez.github.io/tree/main/templates\n\nEach `source` must have a `path` matching an existing directory where the markdown files for this source live. Here, we would have the following directory structure:\n\n```\nkiwi.toml\ntemplates\n  index.html\n  page.html\nposts\n  post-1.md\n  ...\nprojects\n  project-1.md\n  ...\n```\n\nFinally, each markdown file must include metadata:\n\n - A `title` (required)\n - A `date` (optional)\n - A list of `tags` (optional)\n\nMetadata are written in [TOML](https://toml.io/) and must be at the top of the file. A line containing only `%%%` is used to separate the metadata from the actual contents. See https://raw.githubusercontent.com/evuez/evuez.github.io/main/posts/currying.md for an example.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevuez%2Fkiwi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevuez%2Fkiwi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevuez%2Fkiwi/lists"}