Skip to main content

Better password generation inspired by our colorful, feathered friends.

Project description

Macaw

Better password generation inspired by our colorful, feathered friends that speak (often nonsensical) strings of words.

                   ,,,___
                 ,'   _  \__
                /    { O /  `\
               ,\     } /---./             _ __ ___   __ _  ___ __ ___      __
             /\  `-.__- `--'              | '_ ` _ \ / _` |/ __/ _` \ \ /\ / /
            /  `._  :   |                 | | | | | | (_| | (_| (_| |\ V  V /
           /\_;  -' :   ;                 |_| |_| |_|\__,_|\___\__,_| \_/\_/  
           /  \_;  /   /
           /| \ \_/..-'
   ________|_\___/_\\_\\________
   ----------------;;-;;--------
           \/ `-'/
           |\_|_/|
            \/ \/
             \_/

About

  • Macaw is a simple command-line tool to generate unique and easy-to-remember passwords.
  • Macaw uses a dictionary of easy to remember but hard to guess words and strings them together to create unique passwords.
  • Macaw supports lots of options for truly powerful and unique password generation.
  • Unlike a real macaw, you can teach this one to not use certain words if desired.

What makes a good password?

Passwords like cUbXLBagmYPqKY35 are hard to guess, but they're also impossible to remember.

Meanwhile, passwords like correcthorsebatterystaple are just as hard for computers to guess, but they are much easier for humans to remember.

Macaw seeks to generate passwords that are easy to remember so you don't have to dig into a password manager every time you want to log into an app.

Usage

$ macaw

  • Generate and print a new password.

Planned

$ macaw generate

  • Generate a new random password based on pre-defined configuration.

$ macaw speak

  • Uses the macaw ASCII art to output text.
    • Be default, macaw speak will generate a new password like "macaw generate" but with parrot ASCII.
      • Can also be verbose and use $ macaw speak generate

$ macaw generate -n 5

  • Generate 5 passwords.

$ macaw speak generate -n 5 (or $ macaw speak -n 5)

  • Generate 5 passwords with parrot ASCII.

$ macaw speak -w 3

  • Generate a password with 3 words.

$ macaw speak -w 4 -n 5

  • Generate 5 unique passwords with 4 words each with parrot ASCII.

$ macaw speak silly

  • Generate a password without words and only random characters.

$ macaw help

  • Show help page/usage guide.

$ macaw update

  • Updates local dictionary.

$ macaw configure

  • CLI to update config file with defaults for password generation.

$ macaw seed <number>

  • Seed the random generator with a new number.
  • Macaw will attempt to generate a random seed every time it is used (based on computer time).

$ macaw blacklist "<word>"

  • Add a word to blacklist.

$ macaw blacklist

  • Print blacklisted words.

$ macaw speak smart

  • Generate a password in a "sensical" sentence of the form: <adjective><noun><verb><adverb>

$ macaw speak bang

  • Add a ! to the end of the password.

$ macaw speak camel

  • Generate a password in CamelCase.

$ macaw speak sub (o,0)

  • Generate a password and replace all o characters with 0 characters.

eg. $ macaw speak smart camel bang sub (i,1) --> "1ntell1gentBookcaseWaltzesAcc1dentally!" Ironically, MacawSpeakSmartCamelBangSub! is also a good password :wink:

Example:

$ macaw speak smart camel bang sub (i,1)

                   ,,,___
                 ,'   _  \__           ___________________________________________
                /    { O /  `\        /                                           \
               ,\     } /---./     .-'   1ntell1gentBookcaseWaltzesAcc1dentally!   |
             /\  `-.__- `--'       `-.                                             |
            /  `._  :   |             \___________________________________________/
           /\_;  -' :   ;
           /  \_;  /   /
           /| \ \_/..-'
   ________|_\___/_\\_\\________
   ----------------;;-;;--------
           \/ `-'/
           |\_|_/|
            \/ \/
             \_/

Build

  • TODO: PyPi Packaging Instructions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for macawspeak, version 0.1.3
Filename, size File type Python version Upload date Hashes
Filename, size macawspeak-0.1.3-py3-none-any.whl (7.8 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size macawspeak-0.1.3.tar.gz (6.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page