{"id":17087833,"url":"https://github.com/dan-lee/graphql-minify-rs","last_synced_at":"2025-10-24T20:44:36.977Z","repository":{"id":187667454,"uuid":"677463736","full_name":"dan-lee/graphql-minify-rs","owner":"dan-lee","description":"Minify any GraphQL document in Rust","archived":false,"fork":false,"pushed_at":"2023-08-24T16:50:46.000Z","size":51,"stargazers_count":17,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-12T21:11:28.303Z","etag":null,"topics":["graphql","minification","rust"],"latest_commit_sha":null,"homepage":"http://graphql-minify.daniellehr.de","language":"Rust","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/dan-lee.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,"zenodo":null}},"created_at":"2023-08-11T16:27:52.000Z","updated_at":"2024-11-27T06:20:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"a72a1991-954e-4a46-b8f1-c32f95a66fb4","html_url":"https://github.com/dan-lee/graphql-minify-rs","commit_stats":null,"previous_names":["dan-lee/graphql-minify-rs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dan-lee/graphql-minify-rs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dan-lee%2Fgraphql-minify-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dan-lee%2Fgraphql-minify-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dan-lee%2Fgraphql-minify-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dan-lee%2Fgraphql-minify-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dan-lee","download_url":"https://codeload.github.com/dan-lee/graphql-minify-rs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dan-lee%2Fgraphql-minify-rs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280864999,"owners_count":26404439,"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","status":"online","status_checked_at":"2025-10-24T02:00:06.418Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["graphql","minification","rust"],"created_at":"2024-10-14T13:35:05.794Z","updated_at":"2025-10-24T20:44:36.961Z","avatar_url":"https://github.com/dan-lee.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# graphql-minify\n\n\u003ca href=\"https://docs.rs/graphql-minify/latest/graphql_minify\"\u003e\u003cimg alt=\"Docs\" src=\"https://img.shields.io/docsrs/graphql-minify/latest\"\u003e\u003c/a\u003e\n\u003ca href=\"https://lib.rs/crates/graphql-minify\"\u003e\u003cimg alt=\"Crates.io\" src=\"https://img.shields.io/crates/v/graphql-minify\"\u003e\u003c/a\u003e\n\u003ca href=\"https://graphql-minify.daniellehr.de\"\u003e\u003cimg alt=\"Demo\" src=\"https://img.shields.io/badge/demo-wasm-blue\"\u003e\u003c/a\u003e\n\n\nThis is a re-implementation of [`stripIgnoredCharacters`](https://graphql-js.org/api/function/stripignoredcharacters/) from the [GraphQL.js reference implementation](https://github.com/graphql/graphql-js) in Rust. It uses [Logos](https://github.com/maciejhirsz/logos) for tokenization.\n\nAll relevant tests are ported from the reference implementation and run against the Rust implementation.\n\nBeware: It does _not test for validity_ of the GraphQL document, its sole purpose is to minify the document as much as possible.\n\n[**⚡️ Demo built with WASM**](http://graphql-minify.daniellehr.de)\n\n\u003cdetails\u003e\n\u003csummary\u003eDetails\u003c/summary\u003e\n\n\u003e Strips characters that are not significant to the validity or execution of a GraphQL document:\n\u003e\n\u003e- UnicodeBOM\n\u003e- WhiteSpace\n\u003e- LineTerminator\n\u003e- Comment\n\u003e- Comma\n\u003e- BlockString indentation\n\u003e\n\u003eNote: It is required to have a delimiter character between neighboring non-punctuator tokens and this function always uses single space as delimiter.\n\u003e\n\u003eIt is guaranteed that both input and output documents if parsed would result in the exact same AST except for nodes location.\n\u003c/details\u003e\n\n## Usage\n\n~~~rust\nuse graphql_minify::minify;\n\nfn main() {\n  let minified = minify(\"query { user { id name } }\");\n\n  assert_eq!(minified.unwrap(), \"query{user{id name}}\");\n}\n~~~\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdan-lee%2Fgraphql-minify-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdan-lee%2Fgraphql-minify-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdan-lee%2Fgraphql-minify-rs/lists"}