{"id":21436768,"url":"https://github.com/modfin/jct","last_synced_at":"2025-03-16T23:23:44.340Z","repository":{"id":64298772,"uuid":"174582100","full_name":"modfin/jct","owner":"modfin","description":"A lib for toggling json cases.","archived":false,"fork":false,"pushed_at":"2019-03-20T14:29:27.000Z","size":12,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-23T09:33:59.989Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/modfin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-08T17:40:24.000Z","updated_at":"2019-03-20T14:29:28.000Z","dependencies_parsed_at":"2023-01-15T09:00:50.525Z","dependency_job_id":null,"html_url":"https://github.com/modfin/jct","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fjct","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fjct/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fjct/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/modfin%2Fjct/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/modfin","download_url":"https://codeload.github.com/modfin/jct/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243945766,"owners_count":20372929,"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":[],"created_at":"2024-11-23T00:15:26.499Z","updated_at":"2025-03-16T23:23:44.323Z","avatar_url":"https://github.com/modfin.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# JSON Case Toggle\n\nA simple tool for toggling different cases in json data.\n\neg. \n\n\n```go\nj := []byte(`{\"ToggleCase\": 1}`)\nj := jct.Toggle(j, jct.PascalCase(), jct.SnakeCase())\nfmt.Println(string(j))\n// {\"toggle_case\": 1}\n\n```\n\nor\n\n```go\nj := []byte(`{\"some-thing\": [\"else\", {\"but-is\": \"needed\"}]}`)\nj := jct.Toggle(j, jct.KebabCase(), jct.CamelCase())\nfmt.Println(string(j))\n// {\"someThing\": [\"else\", {\"butIs\": \"needed\"}]}\n\n```\n\n\n## Restrictions\nCamel and Pascal case contains more information then delimitede cases such as kebab \nor snake case. Camel case contain information about abbreviations which delimitede cases does not.\neg `URLName -\u003e url_name` and the reverse `url_name -\u003e UrlName`\n\nIn this sence information is destoyed when converting from Camel or Pascal case to a delimitede case.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodfin%2Fjct","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmodfin%2Fjct","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmodfin%2Fjct/lists"}