{"id":13508352,"url":"https://github.com/kemonomachi/yuri","last_synced_at":"2026-02-19T20:31:26.810Z","repository":{"id":26996137,"uuid":"30460081","full_name":"kemonomachi/yuri","owner":"kemonomachi","description":"Elixir module for easier URI manipulation.","archived":false,"fork":false,"pushed_at":"2020-03-03T16:33:37.000Z","size":12,"stargazers_count":13,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-30T17:49:32.617Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kemonomachi.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":"2015-02-07T15:35:40.000Z","updated_at":"2024-07-18T10:35:59.000Z","dependencies_parsed_at":"2022-08-31T12:12:31.816Z","dependency_job_id":null,"html_url":"https://github.com/kemonomachi/yuri","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/kemonomachi/yuri","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kemonomachi%2Fyuri","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kemonomachi%2Fyuri/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kemonomachi%2Fyuri/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kemonomachi%2Fyuri/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kemonomachi","download_url":"https://codeload.github.com/kemonomachi/yuri/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kemonomachi%2Fyuri/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29630829,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T18:02:07.722Z","status":"ssl_error","status_checked_at":"2026-02-19T18:01:46.144Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":[],"created_at":"2024-08-01T02:00:51.847Z","updated_at":"2026-02-19T20:31:26.792Z","avatar_url":"https://github.com/kemonomachi.png","language":"Elixir","funding_links":[],"categories":["HTTP"],"sub_categories":[],"readme":"YURI\n====\n\nSimple struct for representing URIs.\n\nSimilar to the standard lib `URI` struct, but provides Dict-like acces\nto the query string.\n\n##Usage\n\nAdd YURI to your `mix.exs` dependencies:\n\n```elixir\ndef deps do\n  [{:yuri, \"~\u003e 1.0.0\"}]\nend\n```\n\nDownload and compile:\n\n```sh-session\n$ mix deps.get\n\n$ mix deps.compile\n```\n\nBegin URI manipulation:\n\n```elixir\nuri = YURI.parse \"http://www.example.com/example?a=1\"\n\n#Or with optional Dict of query parameters:\nuri = YURI.parse \"http://www.example.com/example?a=1\", %{\"b\" =\u003e 2, \"c\" =\u003e 3}\n\nto_string uri\n#\u003e\u003e \"http://www.example.com/example?a=1\u0026b=2\u0026c=3\"\n\nuri\n|\u003e YURI.put(\"a\", \"one\")\n|\u003e YURI.delete(\"b\")\n|\u003e YURI.put(\"d\", \"IV\")\n|\u003e to_string\n#\u003e\u003e \"http://www.example.com/example?a=one\u0026c=3\u0026d=IV\"\n\nYURI.get uri, \"a\"\n#\u003e\u003e \"1\"\n\nto_string {uri | path: \"/example/new\"}\n#\u003e\u003e \"http://www.example.com/example/new?a=1\u0026b=2\u0026c=3\"\n\nuri.scheme\n#\u003e\u003e \"http\"\n```\n\nYURI implements the Dict behaviour, all functions in the Dict module\ncan be used to manipulate the query string. It also implements the\nEnumerable, Collectable, String.Chars and List.Chars protocols.\n\nOther parts of the URI can be accessed using standard struct syntax.\n\n\n##License\n\nCopyright © 2015 Ookami \u0026lt;\u003cookamikenrou@gmail.com\u003e\u0026gt;\n\nThis work is free. You can redistribute it and/or modify it under the\nterms of the Do What The Fuck You Want To Public License, Version 2,\nas published by Sam Hocevar. See the LICENSE file or\n[WTFPL homepage](http://www.wtfpl.net) for more details.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkemonomachi%2Fyuri","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkemonomachi%2Fyuri","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkemonomachi%2Fyuri/lists"}