{"id":22899754,"url":"https://github.com/follgad/zig-wasm-parser","last_synced_at":"2026-05-15T01:12:44.032Z","repository":{"id":265799843,"uuid":"851312322","full_name":"FOLLGAD/zig-wasm-parser","owner":"FOLLGAD","description":"Experimenting with WASM compilation from Zig","archived":false,"fork":false,"pushed_at":"2025-03-08T23:21:49.000Z","size":70,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-09T00:20:49.629Z","etag":null,"topics":["zig"],"latest_commit_sha":null,"homepage":"https://wasm-test.ahlback-emil.workers.dev/","language":"JavaScript","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/FOLLGAD.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-02T21:17:29.000Z","updated_at":"2025-03-08T23:21:53.000Z","dependencies_parsed_at":"2024-12-03T09:03:13.655Z","dependency_job_id":null,"html_url":"https://github.com/FOLLGAD/zig-wasm-parser","commit_stats":null,"previous_names":["follgad/zig-wasm-parser"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOLLGAD%2Fzig-wasm-parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOLLGAD%2Fzig-wasm-parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOLLGAD%2Fzig-wasm-parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FOLLGAD%2Fzig-wasm-parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FOLLGAD","download_url":"https://codeload.github.com/FOLLGAD/zig-wasm-parser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246586108,"owners_count":20801026,"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":["zig"],"created_at":"2024-12-14T01:16:26.437Z","updated_at":"2025-10-16T20:59:07.379Z","avatar_url":"https://github.com/FOLLGAD.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Partial-JSON parser\n\nA \"partial\" JSON parser for WASM.\n\n## Why?\n\nLLM stream parsing is hard. Parsers are often used to extract data from unstructured text.\nOne of the most common data formats is JSON, and while it's streaming, it might look like this:\n\n```json\n{\n  \"name\": \"John Doe\",\n  \"age\": 30,\n  \"address\": {\n    \"street\": \"123 Main St\",\n    \"city\": \"Anytown\",\n    \"state\": \"CA\",\n    \"zip\": \"123\n```\n\nSince this is not valid JSON, it is difficult to extract the data, especially multiple times a second in-browser while waiting for the LLM response.\n\nWhat Partial-JSON does is it parses the JSON in a streaming fashion, and returns a valid JSON object with correct syntax,\nletting you display the available data real-time to the user.\n\nFor the above input, Partial-JSON would return:\n\n```json\n{\n  \"name\": \"John Doe\",\n  \"age\": 30,\n  \"address\": {\n    \"street\": \"123 Main St\",\n    \"city\": \"Anytown\",\n    \"state\": \"CA\",\n    \"zip\": \"12345\"\n  }\n}\n```\n\n## Fast\n\nThe parser is implemented in Zig, and compiled to WebAssembly.\n\nIt is able to parse and correct a 50kb JSON document in 1.3ms.\n\n## Building\n\n```bash\n$ zig build zig build -Dtarget=wasm32-wasi\n```\n\n## Demo\n\nCheck [the demo](https://wasm-test.ahlback-emil.workers.dev) for a live demo.\nAlso found in the [example](./example) folder.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffollgad%2Fzig-wasm-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffollgad%2Fzig-wasm-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffollgad%2Fzig-wasm-parser/lists"}