{"id":16173131,"url":"https://github.com/joeferner/node-chunkmatcher","last_synced_at":"2025-09-11T05:15:31.967Z","repository":{"id":2541107,"uuid":"3518614","full_name":"joeferner/node-chunkmatcher","owner":"joeferner","description":"Fast searching for multiple patterns accross multiple data chunks.","archived":false,"fork":false,"pushed_at":"2014-11-29T17:23:13.000Z","size":125,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-24T04:40:36.026Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/joeferner.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":"2012-02-22T20:29:17.000Z","updated_at":"2014-11-29T17:23:13.000Z","dependencies_parsed_at":"2022-09-10T01:02:51.620Z","dependency_job_id":null,"html_url":"https://github.com/joeferner/node-chunkmatcher","commit_stats":null,"previous_names":["nearinfinity/node-chunkmatcher"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeferner%2Fnode-chunkmatcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeferner%2Fnode-chunkmatcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeferner%2Fnode-chunkmatcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeferner%2Fnode-chunkmatcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joeferner","download_url":"https://codeload.github.com/joeferner/node-chunkmatcher/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247623005,"owners_count":20968574,"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-10-10T04:06:36.062Z","updated_at":"2025-04-07T08:43:46.837Z","avatar_url":"https://github.com/joeferner.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# chunkmatcher\n\nFast searching for multiple patterns accross multiple data chunks.\n\nThis is useful if you have an http request that you want to search for terms and you don't want to buffer\nthe whole response or test boundary conditions for terms between chunks.\n\n## Installation\n\n```bash\n$ npm install chunkmatcher\n```\n\n## Quick Examples\n\n```javascript\nvar Terms = require(\"chunkmatcher\").Terms;\n\nvar terms = new Terms();\nterms.add('test', { ignoreCase: true });\nterms.add('testing');\nterms.add('search');\n\nvar matcher = terms.createMatcher();\nmatcher.append('test sear');\nmatcher.append('ching t te tes te');\nmatcher.append('sting test');\nconsole.log(matcher.results);\n// [\n//   {\n//     start: 0,\n//     pattern: 'test'\n//   },\n//   {\n//     start: 5,\n//     pattern: 'search'\n//   },\n//   {\n//     start: 24,\n//     pattern: 'test'\n//   },\n//   {\n//     start: 24,\n//     pattern: 'testing'\n//   },\n//   {\n//     start: 32,\n//     pattern: 'test'\n//   }\n// ]\n```\n\n```javascript\nvar Terms = require(\"chunkmatcher\").Terms;\n\nvar terms = new Terms();\nterms.add('www.google.com');\nvar matcher = terms.createMatcher();\n\nvar options = {\n  host: 'www.google.com',\n  port: 80,\n  path: '/index.html'\n};\nhttp.get(options, function (res) {\n  res.on('data', function (chunk) {\n    matcher.append(chunk);\n  });\n  res.on('end', function () {\n    console.log(matcher.results);\n  });\n});\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoeferner%2Fnode-chunkmatcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoeferner%2Fnode-chunkmatcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoeferner%2Fnode-chunkmatcher/lists"}