{"id":19070309,"url":"https://github.com/inhouse-work/cosing","last_synced_at":"2025-07-20T10:34:52.663Z","repository":{"id":215172810,"uuid":"738315908","full_name":"inhouse-work/cosing","owner":"inhouse-work","description":"A ruby gem that easily packages up and parses the COSING database","archived":false,"fork":false,"pushed_at":"2024-05-14T03:05:44.000Z","size":4997,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-06-30T17:54:26.895Z","etag":null,"topics":["cosing","ruby","skincare"],"latest_commit_sha":null,"homepage":"https://www.inhouse.work","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/inhouse-work.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","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":"2024-01-03T00:21:13.000Z","updated_at":"2025-05-05T18:38:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"9cfef61b-920f-41f5-b3d7-b7571dee6ef7","html_url":"https://github.com/inhouse-work/cosing","commit_stats":null,"previous_names":["inhouse-work/cosing"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/inhouse-work/cosing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhouse-work%2Fcosing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhouse-work%2Fcosing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhouse-work%2Fcosing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhouse-work%2Fcosing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inhouse-work","download_url":"https://codeload.github.com/inhouse-work/cosing/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inhouse-work%2Fcosing/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266111439,"owners_count":23877980,"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":["cosing","ruby","skincare"],"created_at":"2024-11-09T01:18:02.294Z","updated_at":"2025-07-20T10:34:52.632Z","avatar_url":"https://github.com/inhouse-work.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cosing\n\nThis is a gem to make the COSING database easier to work with.\n\nCreated by the team at [inhouse.work](https://www.inhouse.work)\n\n## Installation\n\nInstall the gem and add to the application's Gemfile by executing:\n\n    $ bundle add cosing\n\nIf bundler is not being used to manage dependencies, install the gem by executing:\n\n    $ gem install cosing\n\n## Usage\n\n\n```ruby\ndatabase = Cosing.load\ndatabase.ingredients #=\u003e Hash\u003cID, Ingredient\u003e\ndatabase.ingredients.values.sample(2)\ndatabase.save(\"output.json\", pretty: true) # Will save the whole database to a json file\n```\n\n```json\n[\n  {\n    \"reference_number\":\"90000\",\n    \"inci_name\":\"ECKLONIA CAVA WATER\",\n    \"inn\":\"\",\n    \"ph_eur_name\":\"\",\n    \"cas_numbers\":[],\n    \"einecs_numbers\":[],\n    \"description\":\"Ecklonia Cava Water is the aqueous solution of the steam distillates obtained from the whole plant, Ecklonia cava, Lessoniaceae.\",\n    \"restrictions\":[],\n    \"functions\":[\"SKIN PROTECTING\"],\n    \"regulations\":[]\n  },\n  {\n    \"reference_number\":\"32549\",\n    \"inci_name\":\"CETEARTRIMONIUM CHLORIDE\",\n    \"inn\":\"\",\n    \"ph_eur_name\":\"\",\n    \"cas_numbers\":[\"68002-62-0\"],\n    \"einecs_numbers\":[\"268-075-4\"],\n    \"description\":\"Quaternary ammonium compounds, C16-18-alkyltrimethyl, chlorides\",\n    \"restrictions\":[\"V/44\"],\n    \"functions\":[\n        \"ANTISTATIC\",\n        \"HAIR CONDITIONING\",\n        \"PRESERVATIVE\"\n    ],\n    \"regulations\":[\n      {\n        \"annex\":\"Cosing Annex V\",\n        \"cas_numbers\":[\n            \"17301-53-0\",\n            \"57-09-0\",\n            \"112-02-7\",\n            \"1119-94-4\",\n            \"112-00-5\",\n            \"1120-02-1\",\n            \"112-03-8\"\n        ],\n        \"chemical_name\":\"\",\n        \"cmr\":\"\",\n        \"ec_numbers\":[\n            \"241-327-0\",\n            \"200-311-3\",\n            \"203-928-6\",\n            \"214-290-3\",\n            \"203-927-0\",\n            \"214-294-5\",\n            \"203-929-1\"\n        ],\n        \"identified_ingredients\":[\n            \"BEHENTRIMONIUM CHLORIDE\",\n            \"CETEARTRIMONIUM CHLORIDE\",\n            \"CETRIMONIUM BROMIDE\",\n            \"CETRIMONIUM CHLORIDE\",\n            \"COCOTRIMONIUM CHLORIDE\",\n            \"HYDROGENATED PALMTRIMONIUM CHLORIDE\",\n            \"HYDROGENATED TALLOWTRIMONIUM CHLORIDE\",\n            \"LAURTRIMONIUM BROMIDE\",\n            \"LAURTRIMONIUM CHLORIDE\",\n            \"MYRTRIMONIUM BROMIDE\",\n            \"SOYTRIMONIUM CHLORIDE\",\n            \"STEARTRIMONIUM BROMIDE\",\n            \"STEARTRIMONIUM CHLORIDE\",\n            \"TALLOWTRIMONIUM CHLORIDE\"\n        ],\n        \"other_regulations\":\"\",\n        \"reference_number\":\"44\",\n        \"regulated_by\":\"91/184/EEC\",\n        \"regulation\":\"(EU) No 866/2014\",\n        \"sccs_opinions\":[\n            {\n                \"code\":\"0917/05\",\n                \"description\":\"Opinion on Alkyl (C16, C18, C22) trimethylammonium chloride - For other uses than as a preservative\"\n            },\n            {\n                \"code\":\"1087/07\",\n                \"description\":\"Opinion on Alkyl (C16, C18, C22) trimethylammonium chloride - For other uses than as a preservative\"\n            },\n            {\n                \"code\":\"1246/09\",\n                \"description\":\"Opinion on Alkyl (C16, C18, C22) trimethylammonium chloride - For other uses than as a preservative\"\n            }\n        ],\n        \"inn\":\"Alkyl (C12 -C22) trimethyl ammonium bromide and chloride\",\n        \"maximum_concentration\":\"0.1%\",\n        \"other_restrictions\":\"\",\n        \"product_type\":\"\",\n        \"wording_of_conditions\":\"\"\n      }\n    ]\n  }\n]\n```\n\n## Benchmarks\n\nThe library is fast to load on an SSD. You can run the benchmarks by running\n`bin/benchmark`\n\n```\n                        user     system      total        real\nCosing.load         0.676430   0.011551   0.687981 (  0.688974)\nCosing::Annex.load  0.065957   0.001479   0.067436 (  0.067588)\n```\n\nThe above benchmark was run on an M3 Pro Macbook.\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. Then, run\n`rake spec` to run the tests. You can also run `bin/console` for an interactive\nprompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To\nrelease a new version, update the version number in `version.rb`, and then run\n`bundle exec rake release`, which will create a git tag for the version, push\ngit commits and the created tag, and push the `.gem` file to\n[rubygems.org](https://rubygems.org).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/inhouse/cosing.\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finhouse-work%2Fcosing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finhouse-work%2Fcosing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finhouse-work%2Fcosing/lists"}