{"id":16350516,"url":"https://github.com/zspecza/keygen","last_synced_at":"2025-08-12T23:10:53.341Z","repository":{"id":7027937,"uuid":"8301347","full_name":"zspecza/keygen","owner":"zspecza","description":"Fully customizable random keys, at your service!","archived":false,"fork":false,"pushed_at":"2016-11-09T08:38:16.000Z","size":15,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-03T19:41:43.499Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"CoffeeScript","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/zspecza.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-02-19T22:51:19.000Z","updated_at":"2019-08-22T17:05:06.000Z","dependencies_parsed_at":"2022-09-11T23:52:29.501Z","dependency_job_id":null,"html_url":"https://github.com/zspecza/keygen","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zspecza/keygen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zspecza%2Fkeygen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zspecza%2Fkeygen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zspecza%2Fkeygen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zspecza%2Fkeygen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zspecza","download_url":"https://codeload.github.com/zspecza/keygen/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zspecza%2Fkeygen/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270149345,"owners_count":24535728,"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","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-11T01:05:16.318Z","updated_at":"2025-08-12T23:10:53.316Z","avatar_url":"https://github.com/zspecza.png","language":"CoffeeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/declandewet/keygen.png?branch=master)](https://travis-ci.org/declandewet/keygen)\n\n# Description\n\nA rather handy customizable random key sequence generator. It supports complex keys and can even simulate a key to the best of it's ability!\n\n# Usage\n\nUsage is simple. First, include the `keygen.js` file in your project. It can be found in the root directory of this repository. For Node.js users, this is not an NPM module just yet, but worry not, I've added the necessary parts to `exports`.\n\n## Generating a key\n\n```js\nvar key = new KeyGen();\nkey.generate();\n```\nThis will generate a random alphanumeric key that is mixedcase with 5 sequences and each sequence will be 7 characters long.\n\nIt's as simple as that!\n\n### Passing options into KeyGen()\n\n`KeyGen()` supports a number of options. These options come in the form of an object. It's done like so:\n\n```js\nvar options = {\n  type: 'alphabetic',\n  sequences: 8,\n  lettercase: 'lower',\n  sequencelength: 10\n};\n\nvar key = new KeyGen(options);\nkey.generate();\n```\n\nProviding all options is *optional* - If you don't need to change a certain property from the default, your custom options will be merged with the defaults.\n\n#### But I don't want my key's sequences to be exactly the same!\n\nFair enough, I've included a `complex` property just for this! However, you'll need to manually specify the options for each sequence:\n\n```js\nvar options = {\n  complex: true,\n  sequences: {\n    sequence1: {\n      type: 'alphabetic',\n      sequencelength: 3,\n      lettercase: 'lower'\n    },\n    sequence2: {\n      type: 'numeric',\n      sequencelength: 5\n    }\n  }\n};\n\nvar key = new KeyGen(options);\nkey.generate();\n```\n\n#### Option parameters:\n\n* `complex`: true, false\n* `sequences`: the number of sequences you want OR an object containing sequences with different properties\n* `sequencelength`: An integer representing the length of each sequence\n* `type`: 'numeric', 'alphabetic', 'alphanumeric'\n* `lettercase`: 'lower', 'upper', 'mixed'\n\n#### Configuring my own key is just too much work. Isn't there a way I can copy how a key I already have is structured?\n\nThere sure is! But be warned, it is not 100% accurate. It's about 95% accurate. It's rather simple to use:\n\n```js\nvar key = new KeyGen(simulate('ABCD17-EFGH26A-55599A22'));\nkey.generate();\n```\n\n# Contributing\n\nFork this repo. All contributions are welcome. After cloning the repository:\n\n```\n$ npm install\n```\n\nAssuming you have CoffeeScript installed globally (`$ npm install coffee-script -g`):\n\nRunning tests:\n```\n$ cake test\n```\n\nBuilding and packaging:\n```\n$ cake build\n```\n\n# Contributors\n\n[@declandewet](https://github.com/declandewet)\n[@andyhmltn](https://github.com/andyhmltn)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzspecza%2Fkeygen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzspecza%2Fkeygen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzspecza%2Fkeygen/lists"}