{"id":20204855,"url":"https://github.com/aquice/eezpass","last_synced_at":"2025-09-08T09:36:13.308Z","repository":{"id":146188819,"uuid":"494551620","full_name":"AquIce/EezPass","owner":"AquIce","description":"A really personalisable random password generator","archived":false,"fork":false,"pushed_at":"2022-05-22T15:01:49.000Z","size":7200,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T09:41:47.092Z","etag":null,"topics":["password-generator","python","security"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AquIce.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":"2022-05-20T17:25:08.000Z","updated_at":"2022-05-22T14:58:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"8478ba25-53bf-46cb-8b7c-5214a65490bb","html_url":"https://github.com/AquIce/EezPass","commit_stats":null,"previous_names":["aquice/eezpass"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AquIce/EezPass","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AquIce%2FEezPass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AquIce%2FEezPass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AquIce%2FEezPass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AquIce%2FEezPass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AquIce","download_url":"https://codeload.github.com/AquIce/EezPass/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AquIce%2FEezPass/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274166057,"owners_count":25233952,"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-09-08T02:00:09.813Z","response_time":121,"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":["password-generator","python","security"],"created_at":"2024-11-14T05:15:27.213Z","updated_at":"2025-09-08T09:36:13.276Z","avatar_url":"https://github.com/AquIce.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EezPass\n\nEezPass is a really personalisable random password generator\n\n### Importation\n\n  To import **EezPass**, you just have move the *eezpass.py* file in the same folder as your code file.\u003cbr\u003e\n  ![image](https://user-images.githubusercontent.com/99663083/169581649-4f57038f-2621-4d2e-81df-6937fcb72dec.png)\n\n  After you have checked that, use the **from ... import ...** command by adding the following line on top of your code :\n  ```py\n  from eezpass import *\n  ```\n\n  By doing this, Python will automatically add the *__pycache__* folder into your code folder like shown on the image.\n\n***\n\n### Basic configuration\n  \nFirst, you need to create an instance of the *EezPass class* with this code :\n```py\n\u003cinstance_name\u003e = EezPass(\u003cadmin_password\u003e)\n```\nThe admin password is used to make modifications to the parameters.\u003cbr\u003e\n  For more readability, we will use \u003cem\u003emyPass\u003c/em\u003e as \u003cinstance_name\u003e further in the code\u003cbr\u003e\u003cbr\u003e\n\nAfter that, you just have to set a few parameters before starting using the password generator :\n- The charsets you will use (a = lower letters, m = upper letters, n = numbers, s = special characters)\n- The password's length\nWith the following code :\n```py\nmyPass.set_charsets('\u003ccharsets\u003e')\nmyPass.set_length(\u003cpassword_length\u003e)\n```\nAn example for \u003ccharsets\u003e could be 'amn' for all letters and numbers\n\nThese are the necessaries options.\n    \n***\n    \n### Advanced configuration\nNow, let's take a look at the unnecessaries options, but who gives you interesting features.\n\n- Passwords logs\u003cbr\u003e\n    This feature allow you to create a file that will contain all the passwords generated by EezPass using the following code \n    ```py\n    myPass.enable_password_logs(True)\n    ```\n    ![image](https://user-images.githubusercontent.com/99663083/169659129-f6c3055c-dadc-4c70-a4e2-b42b24e03085.png)\u003cbr\u003e\n    You can also disable the logs (they are disabled by default) just by using False instead of True as argument\u003cbr\u003e\n    If you want to change the file name (by default passwords.log), then use this command\n    ```py\n    myPass.passwordLogs = '\u003cnew_name\u003e'\n    ```\n\n- Global logs\u003cbr\u003e\n    While passwords logs allow you to find your generated passwords easily, global logs allow you to see every action performed by your code.\u003cbr\u003e\n    ![image](https://user-images.githubusercontent.com/99663083/169659011-615b3c08-93d6-4dcf-90c4-0004630a74cc.png)\u003cbr\u003e\n    You can enable them like that :\n    ```py\n    myPass.enable_logs(True)\n    ```\n    And just as passwords logs, they are also disabled by default but you can if necessary you can disable them by using False instead of True.\u003cbr\u003e\n    You can also change the logs file name, who is \u003cem\u003edefault.log\u003c/em\u003e\n    ```py\n    myPass.logs = '\u003cnew_name\u003e'\n    ```\n\n- Include string\u003cbr\u003e\n    This is probably the hardest thing to understand about this code, the string including allows you to insert the string you want in your password and at a chosen or random position (by default it is 0).\u003cbr\u003e\n    You can configure that with these few commands :\n    ```py\n    myPass.include_string(True)\n    myPass.set_include_string_position(\u003cstring_include_position\u003e)\n    ```\n    And when you will run your code, it will ask you for the string you want to include.\u003cbr\u003e\n    For the \u003cstring_include_position\u003e, you can use a number or the * character (this will generate a random number).\u003cbr\u003e\n    If you do not want to include a string anymore while you are running your code, just press enter without answering.\n\n***\n  \n### Addtionnal features\nThey are a few functions that are not explained up to now. So let's show these additionnal features :\n- Print properties\u003cbr\u003e\nYou can print the password's properties (charsets and length) with this command :\n```py\nmyPass.print_properties()\n```\n\u003cimg src=\"https://user-images.githubusercontent.com/99663083/169660355-27dc74e2-c333-413d-8eb4-80c5380700ac.png\"\u003e\n\n- Print generated password(s)\nYou can print one or all the generated passwords with their index :\n```py\nmyPass.print_passlogs(\u003cindex\u003e)\n```\nThe index can be a number or '*'. In that case, it will print all the generated passwords\n\n- End the programm\u003cbr\u003e\nThere is a function called *end()* who is called at the end of the programm \n```py\nend()\n```\n***\n  \n### Code example\nFor this example I will use this code :\n```py\nfrom eezpass import * # Import the eezpass module\n\nos.system('cls') # Clear the console\n\nmyPass = EezPass('admin') # Create a new instance of EezPass\n\nmyPass.enable_logs(True) # Enable general logs\nmyPass.enable_password_logs(True) # Enable password logs\nmyPass.set_charsets('amns') # Select all charsets\nmyPass.set_length(16) # Set the password length to 16 characters\n\nmyPass.include_string(True) # Enable string including\nmyPass.set_include_string_position('*') # Set it to a random position\n\nmyPass.print_properties() # Print properties\nmyPass.print_password() # Print the final password\nmyPass.print_passlogs('*') # Print all generated passwords\n```\n\nAs you can see, we have configured that with the following process :\n- Use'admin' as admin password (which is not really a good choice)\u003cbr\u003e\u003cbr\u003e\n- Enable logs\n- Enable password logs\u003cbr\u003e\u003cbr\u003e\n- Select lower letters, upper letters, numbers and special characters as charsets\n- Set the password's length to 16 characters\u003cbr\u003e\u003cbr\u003e\n- Enable the string inclusion\n- Set the string included's position to random\u003cbr\u003e\u003cbr\u003e\n- Print the properties\n- Print the final password\n- Print all generated passwords\n\nAnd this will produce the following output :\n```\nWhat is the password ? admin\nWhich string do you want to include ? EezPass\nPassword length :  16\nEnabled charsets :  Lower letters, upper letters, numbers, special characters\nY9jWht^DgEezPass\n\nY9jWht^DgEezPass\n```\n\nNow, if we rerun the same code, we get this output :\n```\nWhat is the password ? admin\nWhich string do you want to include ? EezPass\nPassword length :  16\nEnabled charsets :  Lower letters, upper letters, numbers, special characters\nE4]n*ZgO}EezPass\n\nY9jWht^DgEezPass\nE4]n*ZgO}EezPass\n```\n\nIf you open the logs file, you will get something very similar to this :\n```log\nLOGS ENABLED at [2022-05-21 21:36:46.422301]\nPassword logs enabled set to True\nLogged as ADMIN\nInclude string turned to True with the string 'EezPass'\nProperties printed\nPassword generated : 'Y9jWht^DgEezPass'\nPassword printed\nSuccess [] (Programm exited successfully)\nLOGS ENABLED at [2022-05-21 21:37:13.842654]\nPassword logs enabled set to True\nLogged as ADMIN\nInclude string turned to True with the string 'EezPass'\nProperties printed\nPassword generated : 'E4]n*ZgO}EezPass'\nPassword printed\nSuccess [] (Programm exited successfully)\n```\n  \nBy Lil_Tim_0 ;)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faquice%2Feezpass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faquice%2Feezpass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faquice%2Feezpass/lists"}