{"id":28566341,"url":"https://github.com/bird-studio/shenron","last_synced_at":"2026-04-30T19:31:15.078Z","repository":{"id":205268994,"uuid":"713388238","full_name":"bird-studio/shenron","owner":"bird-studio","description":"Code generator.","archived":false,"fork":false,"pushed_at":"2024-07-13T12:27:48.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-10T15:09:54.178Z","etag":null,"topics":["deno","typescript"],"latest_commit_sha":null,"homepage":"https://deno.land/x/shenron","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/bird-studio.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-02T12:24:32.000Z","updated_at":"2024-07-13T12:26:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"d839aef0-51e8-4196-84f2-c0274f8d3517","html_url":"https://github.com/bird-studio/shenron","commit_stats":null,"previous_names":["bird-studio/shenron"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/bird-studio/shenron","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bird-studio%2Fshenron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bird-studio%2Fshenron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bird-studio%2Fshenron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bird-studio%2Fshenron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bird-studio","download_url":"https://codeload.github.com/bird-studio/shenron/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bird-studio%2Fshenron/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32475191,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["deno","typescript"],"created_at":"2025-06-10T15:09:53.905Z","updated_at":"2026-04-30T19:31:15.044Z","avatar_url":"https://github.com/bird-studio.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# shenron\n\n## What is this?\n\nCode generator.\n\nThis is a [repository](https://github.com/akira-toriyama/shenron-demo) for\noperation confirmation.\n\n## Features\n\nThere are many libraries that generate code using `handlebars.js` and `ejs`.\nHowever, readability is low. It is not possible to directly test or confirm\noperation.\n\nBelow is an example of Ract, but it is difficult to read because of the many\ntags. Syntax highlighting is also disabled.\n\nIt is difficult to produce because it is not possible to check directly.\n\n```ejs\nimport React from 'react'\n\ntype Props = {\n\n}\n\nexport const \u003c%= h.changeCase.pascal(name) %\u003e: React.FC\u003cProps\u003e = ({}) =\u003e {\n  return (\n    \u003c\u003e\n        \u003ch1\u003e\u003c%= h.changeCase.pascal(name) %\u003e\u003c/h1\u003e\n    \u003c/\u003e\n  )\n}\n```\n\n## Use\n\n### Step.0\n\n```bash\nbrew install f2\n```\n\n### Step.1\n\nCreate a file like this one.\n\n`./tpl/fruits/fruits.html`\n\n```html\n\u003cp\u003e This is red fruits \u003c/p\u003e\n\u003cp\u003e This is green fruits \u003c/p\u003e\n```\n\n`./generation.ts`\n\n```\nimport { generate } from \"https://deno.land/x/shenron/mod.ts\";\n\ngenerate({\n  dir: {\n    output: \"./output\",\n    template: \"./demo/tpl/fruits\",\n  },\n  replacements: [{\n    before: \"fruits\",\n    after: \"apple\",\n  }, {\n    before: \"Fruits\",\n    after: \"Apple\",\n  }],\n});\n```\n\n### Step.2\n\nExecute.\n\n```bash\ndeno run --allow-run --allow-read --allow-write --allow-env --allow-sys ./generation.ts\n```\n\n### Finish\n\n`./output/apple/apple.html`\n\n```html\n\u003cp\u003e This is red apple \u003c/p\u003e\n\u003cp\u003e This is green apple \u003c/p\u003e\n```\n\n## Notes\n\nPlease use alphabetic letters for `replacements` as much as possible.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbird-studio%2Fshenron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbird-studio%2Fshenron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbird-studio%2Fshenron/lists"}