{"id":18850737,"url":"https://github.com/typeerror/crystalball","last_synced_at":"2025-04-14T09:40:27.665Z","repository":{"id":39701437,"uuid":"155125937","full_name":"TypeError/crystalball","owner":"TypeError","description":"An enchanting 🔮 web screenshot tool for capturing and sharing web content effortlessly","archived":false,"fork":false,"pushed_at":"2024-06-28T09:45:58.000Z","size":191,"stargazers_count":34,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-27T22:51:14.527Z","etag":null,"topics":["bugbounty","enumeration","infosec","security","web-screenshot"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/crystalball","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/TypeError.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}},"created_at":"2018-10-28T23:30:16.000Z","updated_at":"2024-06-28T09:46:02.000Z","dependencies_parsed_at":"2024-06-28T10:54:41.341Z","dependency_job_id":null,"html_url":"https://github.com/TypeError/crystalball","commit_stats":null,"previous_names":["cakinney/crystalball"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeError%2Fcrystalball","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeError%2Fcrystalball/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeError%2Fcrystalball/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TypeError%2Fcrystalball/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TypeError","download_url":"https://codeload.github.com/TypeError/crystalball/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248855511,"owners_count":21172576,"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":["bugbounty","enumeration","infosec","security","web-screenshot"],"created_at":"2024-11-08T03:31:00.370Z","updated_at":"2025-04-14T09:40:27.639Z","avatar_url":"https://github.com/TypeError.png","language":"TypeScript","readme":"# Crystal Ball 🔮\n\n![](https://img.shields.io/npm/v/crystalball.svg)\n![](https://img.shields.io/npm/l/crystalball.svg)\n![](https://img.shields.io/npm/types/crystalball.svg)\n\nA Magical Web Screenshot Project\n\nCrystal Ball 🔮 is a library that takes an array or file of URLs and returns a report with screenshots (using [Puppeteer](https://developers.google.com/web/tools/puppeteer/)), application headers and src/href references. \n\n*For information on downloading and installing Node.js, see [nodejs.org](https://nodejs.org).*\n\n## Usage\n### Crystal Ball Command Line Install   \n\n```\n$ npm install crystalball -g \n```\n\n#### Crystal Ball (cli)\n\nThe *first* parameter is URL(s) (encapsulated in quotes, separated by commas) or a filename and followed by individual options. \n\n##### Options\n\n* `prefix` : Prefix http and https to each URL  \n* `port` : Add additional port 8080 for HTTP and 8443 for HTTPS  \n* `file` : Use the first parameter as a filename (instead of URLs) to parse *(URLs separated by a new line)*\n\nIf the last argument is a number, it will specify the number of concurrent connections *(default = 10)*. \n\n*Note: The `file` argument **must** be included to use a filename.* \n\n### Examples:\n\n**Array of URLS:**  \n`crystalball 'http://example.com, http://example1.com'`  \n\n**Array of URLS with Options:**  \n`crystalball 'http://example.com, http://example1.com' prefix ports 15` \n\n**File (must include `file` argument):**  \n`crystalball 'example.txt' file`   \n\n**File with Options:**  \n`crystalball 'example.txt' file prefix ports 15`  \n\n*Note: The **first** argument should be encapsulated in quotes.* \n\n### Module Install\n\n```\n$ npm install crystalball\n```\n\n#### Modules\n\nImport: `import * as O from \"crystalball\";`  \nRequire: `const O = require(\"crystalball\");`\n\n## Options\n\nOptions are passed as an object with the following properties and values. \n\n* `file : true ` : Use filename as argument  \n* `filename: \"example\"` :  Report filename *(defaults to `cb`)*\n* `prefix: true ` : Prefix http and https  \n* `ports : boolean` : Add port 8080 for http and port 8443 for https  \n* `connections : number` : Number of concurrent connections *(default = 10)*\n\n##### Example:\n\n```javascript\nO.see(\"example.txt\", { file: true, filename: \"example\", prefix: true });\n    =\u003e Report output in ./crystalball/example_date.html\n    =\u003e Data output in ./crystalball/data/\n```\n\n## Functions\n\nThe `see` function takes an array of URLS and options. \n\n```javascript\nO.see([\"http://www.example.com\", \"http://www.example2.com\"], options);\n    =\u003e Report output in ./crystalball/cb_date.html\n    =\u003e Data output in ./crystalball/data/\n```\n\nThe `file` function takes a filename and options. \n\n```javascript\nO.file(\"example.txt\", options);\n    =\u003e Report output in ./crystalball/cb_date.html\n    =\u003e Data output in ./crystalball/data/\n```\n\n## Reporting\n\n![](https://cakinney.com/img/crystalball-example.png)\n\n1. HTML report with screenshots, application headers and src/href references at `./crystalball/cb_date.html`. *(Note: Clicking on each screenshot will toggle size)*\n2. Data files with application source, headers and src/href references at `./crystalball/data/`.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypeerror%2Fcrystalball","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftypeerror%2Fcrystalball","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypeerror%2Fcrystalball/lists"}