{"id":19577133,"url":"https://github.com/epaew/ecg","last_synced_at":"2025-04-27T06:32:02.559Z","repository":{"id":52414024,"uuid":"216046733","full_name":"epaew/ecg","owner":"epaew","description":"ERB(eRuby) based, simple and powerful configration file generator for general purpose.","archived":false,"fork":false,"pushed_at":"2021-04-29T21:22:07.000Z","size":49,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-11T03:23:45.228Z","etag":null,"topics":["configration","erb","eruby","json","yaml"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/epaew.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":"2019-10-18T14:50:13.000Z","updated_at":"2024-10-17T11:25:54.000Z","dependencies_parsed_at":"2022-09-09T02:22:51.851Z","dependency_job_id":null,"html_url":"https://github.com/epaew/ecg","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epaew%2Fecg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epaew%2Fecg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epaew%2Fecg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epaew%2Fecg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/epaew","download_url":"https://codeload.github.com/epaew/ecg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224062795,"owners_count":17249291,"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":["configration","erb","eruby","json","yaml"],"created_at":"2024-11-11T07:04:40.769Z","updated_at":"2024-11-11T07:04:41.454Z","avatar_url":"https://github.com/epaew.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ecg\n[![Gem Version](https://badge.fury.io/rb/ecg.svg)](https://badge.fury.io/rb/ecg)\n[![Build Status](https://github.com/epaew/ecg/workflows/Run%20TestUnit/badge.svg)](https://github.com/epaew/ecg/actions?query=workflow%3A%22Run+TestUnit%22+branch%3A%22master%22)\n[![Maintainability](https://api.codeclimate.com/v1/badges/a043130a95580dc41610/maintainability)](https://codeclimate.com/github/epaew/ecg/maintainability)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/a043130a95580dc41610/test_coverage)](https://codeclimate.com/github/epaew/ecg/test_coverage)\n\necg is an ERB(eRuby) based, simple and powerful configration file generator for general purpose.\n\n## Requirements\nRuby: 2.5 or higher\n\n## Install\n```sh\ngem install ecg\n```\n\n## Usage\nSee also `ecg --help`\n\n### Simple example\n```sh\necg --values name=epaew --values email=\"epaew.333@gmail.com\" \u003c template.json.erb\n{\n  \"type\": \"user\",\n  \"name\": \"epaew\",\n  \"email\": \"epaew.333@gmail.com\"\n}\n```\nor\n```sh\necg config.yml \u003c template.json.erb\n{\n  \"type\": \"user\",\n  \"name\": \"epaew\",\n  \"email\": \"epaew.333@gmail.com\"\n}\n```\nwith\n* template.json.erb\n    ```json\n    {\n      \"type\": \"user\",\n      \"name\": \"\u003c%= name %\u003e\",\n      \"email\": \"\u003c%= email %\u003e\"\n    }\n    ```\n* config.yml\n    ```yaml\n    name: epaew\n    email: epaew.333@gmail.com\n    ```\n\n### Using nested keys\n```sh\necg --values user.name=epaew --values user.email=\"epaew.333@gmail.com\" \u003c template.json.erb\n{\n  \"user\": {\n    \"name\": \"epaew\",\n    \"email\": \"epaew.333@gmail.com\"\n  }\n}\n```\nor\n```sh\necg config.yml \u003c template.json.erb\n{\n  \"user\": {\n    \"name\": \"epaew\",\n    \"email\": \"epaew.333@gmail.com\"\n  }\n}\n```\nwith\n* template.json.erb\n    ```json\n    {\n      \"user\": {\n        \"name\": \"\u003c%= user.name %\u003e\",\n        \"email\": \"\u003c%= user.email %\u003e\"\n      }\n    }\n    ```\n* config.yml\n    ```yaml\n    user:\n      name: epaew\n      email: epaew.333@gmail.com\n    ```\n\n### Using array (JSON and YAML only)\n```sh\necg config.yml \u003c template.json.erb\n{\n  \"user\": [\n    {\n      \"name\": \"Kurimu\"\n    },\n    {\n      \"name\": \"Chizuru\"\n    },\n    {\n      \"name\": \"Minatsu\"\n    },\n    {\n      \"name\": \"Mahuyu\"\n    }\n  ]\n}\n```\nwith\n* template.json.erb\n    ```json\n    {\n      \"user\": [\n    \u003c% users.each_with_index do |user, i| %\u003e\n        {\n          \"name\": \"\u003c%= user.name %\u003e\"\n    \u003c% unless i == users.count - 1 %\u003e\n        },\n    \u003c% else %\u003e\n        }\n    \u003c% end %\u003e\n    \u003c% end %\u003e\n      ]\n    }\n    ```\n* config.yml\n    ```yaml\n    users:\n      - name: Kurimu\n      - name: Chizuru\n      - name: Minatsu\n      - name: Mahuyu\n    ```\n\n## License\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fepaew%2Fecg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fepaew%2Fecg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fepaew%2Fecg/lists"}