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:

$ 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.

Source Distribution

macawspeak-0.1.3.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

macawspeak-0.1.3-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file macawspeak-0.1.3.tar.gz.

File metadata

  • Download URL: macawspeak-0.1.3.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for macawspeak-0.1.3.tar.gz
Algorithm Hash digest
SHA256 5bcf0ca3d95f81e74415ca8fa9138de0e16a6de2b7b62a206bd39524c36be784
MD5 e3e355af15d402db37cafd94b4e5c0e8
BLAKE2b-256 d27a5d460f2beabd314d473578f9874d2fe76880f618bd96fd2bd19c8b6893d0

See more details on using hashes here.

File details

Details for the file macawspeak-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: macawspeak-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.0

File hashes

Hashes for macawspeak-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ecf3c647a02148c3ab9395ebe9d88903f032a6c9de338f00e895b709892a33e3
MD5 009dd8d2bf235c5088ecf72ea21dcb5e
BLAKE2b-256 2d339ce38d801753add634b02f6b433eccbdf18202685f4b1d4e6f9bfece8ad3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page