Is your feature request related to a problem? Please describe.
Currently, this project is usable from a personal Google Colab notebook, which works by interactively prompting the user.
This causes a few issues,
- One would have to remember or save website/notebook URL somehow
- Wait for Colab to connect and allocate compute
- Provide quite a few, essentially bool flags and string inputs one by one
- Get a result, which if not desirable, run again and provide input which is a slow process
- Simply cannot use it without being connected to the net
- No way to persist passwords
Describe the solution you'd like
Converting this project to a python module that can be used as a CLI might be an ideal solution. It could look something like
pswdgen --chars=5 --numbersrequired --specialchar=2 --charstoinclude="abc" --scramble=3
Thus, it has some benefits,
- CLI can be downloadable via pip and can be used without remembering any particular URL
- Can actually be run locally without waiting for any such allocation and even without a net connection
- User doesn't have to go through all input prompts and can just generate passwords in one go, thus making this tool more pragmatic
- Many users will have terminals with autocompletion/suggestion (eg zsh-autosuggestions) which reduces the need to even type commands fully, so this tool would actually fit in well
- As it runs locally, it has a filesystem to interact with which means functionality to save passwords in some sort of database (maybe SQLite) can be implemented
- Other devs might actually use this within their codebase if need be
- Can still be demo-able via a Colab notebook
Discussed all this with @AtrikGit6174 before!
However, all of this is extra work ! ๐
Describe alternatives you've considered
Continuing with a Colab notebook, in which case it's difficult to use properly. :)