{"id":25045145,"url":"https://github.com/petruki/skimming","last_synced_at":"2025-04-14T02:26:18.201Z","repository":{"id":38398922,"uuid":"256924066","full_name":"petruki/skimming","owner":"petruki","description":"Skimming is a search engine module for Deno","archived":false,"fork":false,"pushed_at":"2024-12-15T21:57:21.000Z","size":69,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-16T03:08:31.202Z","etag":null,"topics":["cache","deno","deno-module","fetch","search-engine"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/petruki.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2020-04-19T05:44:45.000Z","updated_at":"2024-12-15T21:57:24.000Z","dependencies_parsed_at":"2022-08-25T06:11:40.013Z","dependency_job_id":"de086212-c8cd-43ce-bc9a-88eb3b87cfb2","html_url":"https://github.com/petruki/skimming","commit_stats":{"total_commits":27,"total_committers":1,"mean_commits":27.0,"dds":0.0,"last_synced_commit":"d7cb7d14dca30fbd8052d261b2180cb00bca5409"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petruki%2Fskimming","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petruki%2Fskimming/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petruki%2Fskimming/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petruki%2Fskimming/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/petruki","download_url":"https://codeload.github.com/petruki/skimming/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237423577,"owners_count":19307870,"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":["cache","deno","deno-module","fetch","search-engine"],"created_at":"2025-02-06T05:32:39.725Z","updated_at":"2025-02-06T05:32:40.222Z","avatar_url":"https://github.com/petruki.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"***\n\n\u003cdiv align=\"center\"\u003e\n\u003cb\u003eSkimming\u003c/b\u003e\u003cbr\u003e\nTag, Customize and Search with Skimming for Deno\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Master CI](https://github.com/petruki/skimming/actions/workflows/master.yml/badge.svg)](https://github.com/petruki/skimming/actions/workflows/master.yml)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=petruki_skimming\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=petruki_skimming)\n[![deno.land/x/skimming](https://shield.deno.dev/x/skimming)](https://deno.land/x/skimming)\n[![JSR](https://jsr.io/badges/@trackerforce/skimming)](https://jsr.io/@trackerforce/skimming)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n\u003c/div\u003e\n\n***\n\nSkimming is a content fetcher for Deno. The idea is to provide a simple and\nefficient and customizable way to fetch content from the web.\n\n- Fetch documents online `skim()` or local with `skimContent()`\n- Customizable cache\n- Customizable content preview\n- Ignore case option\n- Trim content option to display only complete information\n- Regex support\n\n# Usage\n\n### No cache\n\n```js\nimport { Skimming } from \"@trackerforce/skimming@[VERSION]\"; // or\nimport { Skimming } from 'https://deno.land/x/skimming@v[VERSION]/mod.ts';\n\nconst skimmer = Skimming.create({\n  url: \"https://raw.githubusercontent.com/petruki/skimming/master/\",\n  files: [\"README.md\"],\n});\n\nconst results = await skimmer.skim(\"my query\");\n```\n\n- Where `previewLength` is the number of characters after the found occurrence\n  which will be displayed (default: 200)\n- Add `ignoreCase` option for whether ignore case or not (default: false)\n\n### Using cache\n\n```js\nconst skimmer = Skimming.create({\n  url: \"https://raw.githubusercontent.com/petruki/skimming/master/\",\n  files: [\"README.md\"],\n  cacheOptions: { expireDuration: 10, size: 10 },\n});\n\nconst results = await skimmer.skim(\"my query\");\n```\n\n- Where `expireDuration` the time in seconds that the cached value will expire\n  (default: 1min)\n- Where `size` is the number of stored queries and its results in cache\n  (default: 60)\n\n### Testing\n\nUse `deno task test` to run tests.\n\n## Contributing\n\nPlease do open an issue if you have some cool ideas to contribute.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetruki%2Fskimming","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetruki%2Fskimming","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetruki%2Fskimming/lists"}