{"id":16096347,"url":"https://github.com/sio/parrot38","last_synced_at":"2025-07-28T17:08:27.168Z","repository":{"id":101312916,"uuid":"99608170","full_name":"sio/parrot38","owner":"sio","description":"Write a blog in plain text with multiple entries per file","archived":false,"fork":false,"pushed_at":"2017-08-10T19:21:55.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-06T02:13:33.874Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sio.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-07T18:36:12.000Z","updated_at":"2019-05-21T14:00:39.000Z","dependencies_parsed_at":null,"dependency_job_id":"73c7fe39-e920-4433-afe0-d422a5ba291d","html_url":"https://github.com/sio/parrot38","commit_stats":{"total_commits":21,"total_committers":1,"mean_commits":21.0,"dds":0.0,"last_synced_commit":"4622d3189e40a82a4f0c8b6ff3ecbf3248df2428"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sio/parrot38","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fparrot38","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fparrot38/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fparrot38/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fparrot38/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sio","download_url":"https://codeload.github.com/sio/parrot38/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sio%2Fparrot38/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267552097,"owners_count":24106000,"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-07-28T02:00:09.689Z","response_time":68,"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":[],"created_at":"2024-10-09T17:13:37.737Z","updated_at":"2025-07-28T17:08:27.138Z","avatar_url":"https://github.com/sio.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# parrot38\nWrite a blog in plain text with multiple entries per file\n\nMost static site generators (e.g. Jekyll) require each blog post to be\nwritten it a separate text file. This is convenient for machine reading\nbut not very comfortable for human readers. Normal user experience with\nweb based blogs involves some kind of feed where user scrolls through\nmultiple blog entries and reads the ones of interest to him.\n\nparrot38 offers a minimalistic way of writing a blog that is readable in\nplain text form and remains renderable in the markup language used\nfor individual posts (Markdown, reStructuredText, HTML, etc). No markup\nlanguage for blog post body is required or assumed. parrot38 tries to be\nof minimum interference with text markup languages in use today.\n\n\n# Contents\nThere are two important parts of this project:\n- parrot38 [markup specification](SPECIFICATION.md)\n- [Python module](parrot38.py) that implements parsing parrot38 data and\n  converting it to a form readable by popular tools (e.g. Jekyll)\n\n\n# Markup example\nThe following example shows two blog posts written in Markdown and saved\nto the same file using parrot38 markup:\n```markdown\n::Date:: 2017-08-07\n::Tags:: test parrot38\n\n# Second blog entry - another markdown heading\nSecond entry is here - another markdown text\n\n::::::::::::::::::::::::::::::::::::::\n::Date:: 2017-08-06\n\n# First blog entry - markdown heading\nFirst entry is here - markdown text\n```\n\n\n# Contributing\nAll contributions are welcome!\nPlease check [CONTRIBUTING.md](CONTRIBUTING.md) for details\n\n\n# License and copyright\nCopyright © 2017 Vitaly Potyarkin\n```\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use these files except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsio%2Fparrot38","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsio%2Fparrot38","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsio%2Fparrot38/lists"}