{"id":13529450,"url":"https://github.com/ChrisCarini/shodan-exposure-box","last_synced_at":"2025-04-01T16:31:25.413Z","repository":{"id":37781360,"uuid":"438092100","full_name":"ChrisCarini/shodan-exposure-box","owner":"ChrisCarini","description":"Update a gist to contain Shodan.io Exposure Stats","archived":false,"fork":false,"pushed_at":"2025-03-28T13:09:37.000Z","size":245,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T14:23:48.188Z","etag":null,"topics":["pinned","pinned-gist","shodan"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ChrisCarini.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":"2021-12-14T02:33:06.000Z","updated_at":"2025-03-28T13:09:40.000Z","dependencies_parsed_at":"2023-02-10T15:15:37.122Z","dependency_job_id":"4fa52747-3d76-4d05-97cf-a60852ecfc8e","html_url":"https://github.com/ChrisCarini/shodan-exposure-box","commit_stats":{"total_commits":152,"total_committers":2,"mean_commits":76.0,"dds":"0.052631578947368474","last_synced_commit":"b68f0d954a0644f24cce17430f636a5c72f50e43"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChrisCarini%2Fshodan-exposure-box","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChrisCarini%2Fshodan-exposure-box/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChrisCarini%2Fshodan-exposure-box/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChrisCarini%2Fshodan-exposure-box/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ChrisCarini","download_url":"https://codeload.github.com/ChrisCarini/shodan-exposure-box/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246670543,"owners_count":20815002,"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":["pinned","pinned-gist","shodan"],"created_at":"2024-08-01T07:00:36.444Z","updated_at":"2025-04-01T16:31:25.133Z","avatar_url":"https://github.com/ChrisCarini.png","language":"Python","funding_links":[],"categories":["External Services"],"sub_categories":[],"readme":"\u003cp align='center'\u003e\n  \u003cimg src=\"images/shodan-port-usage-box.png\" width=\"600px\"\u003e\n  \u003ch1 align=\"center\"\u003eshodan-exposure-box\u003c/h1\u003e\n  \u003cp align=\"center\"\u003e💻 Update a pinned gist to contain Shodan.io Exposure Stats\u003c/p\u003e\n  \u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/ChrisCarini/shodan-exposure-box/workflows/Update%20gist%20with%20Shodan%20Stats/badge.svg?branch=main\" alt=\"Update a pinned gist to contain Shodan.io Exposure Stats\"\u003e\n    \u003cimg src=\"https://github.com/ChrisCarini/shodan-exposure-box/workflows/Linting%20%26%20Test/badge.svg?branch=main\" alt=\"Lint \u0026 Test\"\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n## 🎒 Prep Work\n\n1. Create a new public GitHub Gist (https://gist.github.com/)\n2. Create a token with the `gist` scope and copy it. (https://github.com/settings/tokens/new)\n3. Copy the `API token`\n\n## 🖥 Project Setup\n\n1. Go to your fork's `Settings` \u003e `Secrets` \u003e `Add a new secret` for each environment secret (below)\n\n## 🤫 Environment Secrets\n\n- **GH_TOKEN:** The GitHub token generated above.\n- **GIST_ID:** The ID portion from your gist url:\n\n  `https://gist.github.com/ChrisCarini/`**`0c0b8690e430b9fe4572f9c4a38811c1`**.\n\n  (Alternatively this can be put directly in `.github/workflows/shodan.yml` as it is public anyway.)\n\n## 🤓 Hacking\n\n### Getting Setup\n\n```shell\npython3 -m venv venv\nsource activate\npip install -r requirements.txt\n```\n\n### Saving Dependencies\n\n```shell\nsource activate\npip-chill \u003e requirements.txt\n```\n\n### Running linting and tests\n\n```shell\nisort main.py shodan.py test/ \u0026\u0026 \\\nmypy main.py shodan.py test/ \u0026\u0026 \\\nflake8 main.py shodan.py test/ \u0026\u0026 \\\nblue --check main.py shodan.py test/ \u0026\u0026 \\\npytest test/\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChrisCarini%2Fshodan-exposure-box","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FChrisCarini%2Fshodan-exposure-box","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChrisCarini%2Fshodan-exposure-box/lists"}