{"id":20476842,"url":"https://github.com/oleiade/motus","last_synced_at":"2025-05-12T14:29:50.840Z","repository":{"id":162516303,"uuid":"637040638","full_name":"oleiade/motus","owner":"oleiade","description":"A dead simple password generator","archived":false,"fork":false,"pushed_at":"2025-05-01T17:23:32.000Z","size":359,"stargazers_count":92,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-12T14:29:43.169Z","etag":null,"topics":["cli","password-generator","rust","security"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/oleiade.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,"zenodo":null}},"created_at":"2023-05-06T10:18:56.000Z","updated_at":"2025-05-07T11:47:13.000Z","dependencies_parsed_at":"2024-01-27T12:20:42.355Z","dependency_job_id":"26c6fc16-892a-46d4-a3d9-2e4d45712837","html_url":"https://github.com/oleiade/motus","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oleiade%2Fmotus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oleiade%2Fmotus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oleiade%2Fmotus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oleiade%2Fmotus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oleiade","download_url":"https://codeload.github.com/oleiade/motus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253754827,"owners_count":21958914,"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","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":["cli","password-generator","rust","security"],"created_at":"2024-11-15T15:23:55.090Z","updated_at":"2025-05-12T14:29:50.811Z","avatar_url":"https://github.com/oleiade.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"logo.png\" alt=\"motus logo\"/\u003e\u003c/p\u003e\n\u003ch1 align=\"center\"\u003eDead simple password generator\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"http://github.com/oleiade/motus/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/release/oleiade/motus.svg\" alt=\"release\"\u003e\u003c/a\u003e\n    \u003ca href=\"http://www.gnu.org/licenses/agpl-3.0\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-AGPL-blue.svg\" alt=\"AGPL License\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/oleiade/motus/actions/workflows/build.yml\"\u003e\u003cimg src=\"https://github.com/oleiade/motus/actions/workflows/build.yml/badge.svg\" alt=\"Build status\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nMotus is a command-line application that makes generating secure passwords a breeze.\n\nInspired by the user experience of the 1Password password generator, motus focuses on providing a simple and elegant user interface with sane defaults and comprehensive options. By default, motus copies the generated password to your clipboard, making it even more convenient to use.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"static/motus-demo.gif\" alt=\"motus demo\" /\u003e\n\u003c/p\u003e\n\n## Features\n\n- **Simple and elegant user interface**: motus is designed to be easy to use and understand, and makes it difficult to generate insecure passwords.\n- Generate **secure memorable passwords**: motus uses the [EFF's wordlist](https://www.eff.org/deeplinks/2016/07/new-wordlists-random-passphrases) to generate secure and memorable passwords\n- Generate **random passwords** with optional number and symbol inclusion\n- Generate **PINs** with customizable length\n- **Security analysis**: the `--analyze` option provides a security analysis of the generated password, ensuring optimal password strength.\n- **Sane defaults**\n- **Clipboard** integration for easy password usage\n- Flexible **customization** options\n\n## Installation\n\n### on macOS\n\nUsing Homebrew:\n\n```bash\nbrew tap oleiade/tap\nbrew install motus\n```\n\n### on Debian/Ubuntu Linux\n\nAdd the repository and install motus:\n\n```bash\n# Download and install the repository's GPG key\ncurl -fsSL https://oleiade.github.io/deb/oleiade-archive-keyring.gpg | \\\ngpg --dearmor | \\\nsudo tee /usr/share/keyrings/oleiade-archive-keyring.gpg \u003e /dev/null\n\n# Add the repository to your system's sources\necho \"deb [signed-by=/usr/share/keyrings/oleiade-archive-keyring.gpg] https://oleiade.github.io/deb stable main\" \\\nsudo tee /etc/apt/sources.list.d/oleiade.list \u003e /dev/null\n\n# Update your sources\napt update\n\n# Install motus\napt install motus\n```\n\n### using Cargo\n\nAlternatively, you can install using Cargo:\n\n```bash\ncargo install motus\n```\n\n## Usage\n\n```bash\n\u003e motus --help\nMotus is a command-line tool for generating secure, random, and memorable passwords as well as PIN codes.\n\nUsage: motus [OPTIONS] \u003cCOMMAND\u003e\n\nCommands:\n  memorable\n          Generate a human-friendly memorable password\n  random\n          Generate a random password with specified complexity\n  pin\n          Generate a random numeric PIN code\n  help\n          Print this message or the help of the given subcommand(s)\n\nOptions:\n      --no-clipboard\n          Disable automatic copying of generated password to clipboard\n\n  -o, --output \u003cOUTPUT\u003e\n          Output the generated password in a specified format\n\n          [default: text]\n          [possible values: text, json]\n\n      --analyze\n          Display a safety analysis along the generated password\n\n      --seed \u003cSEED\u003e\n          Seed value for deterministic password generation (for testing purposes)\n\n  -h, --help\n          Print help (see a summary with '-h')\n\n  -V, --version\n          Print version\n```\n\n### Generate a memorable password\n\n```bash\n\u003e motus memorable\nfossil abreast overplant commute dish\n\n# Or customize the password generation\n\u003e motus memorable --words 7 --separator numbers-and-symbols --capitalize\nGoes$Stood3Paving(Tipoff$Settle*Flip3Scone\n```\n\n### Generate a random password\n\n```bash\n\u003e motus random\nUDrZrJJTYElWeOFHZmfp\n\n# Or customize the password generation\n\u003e motus random --characters 42 --numbers --symbols\n6HdwMjKQPYE3scIBlCps\u00261Ir5R8lQ85eIVtF!fpUSD\n```\n\n### Generate a PIN\n\n```bash\n\u003e motus pin\n1234421\n\n# Or customize the size of the PIN\n\u003e motus pin --numbers 9\n347751411\n```\n\n### Miscelaneous\n\n#### Generate a password and analyze its security\n\n![motus --analyze](static/motus-demo-report.gif)\n\n##### Generate a password and output the result in JSON format\n\n```bash\n\u003e motus --output json random\n{\"kind\": \"memorable\", \"password\": \"6HdwMjKQPYE3scIBlCps\u00261Ir5R8lQ85eIVtF!fpUSD\"}\n```\n\n## Contributing\n\nWe welcome contributions to the project. Feel free to submit issues, suggest new features, or create pull requests to help improve motus.\n\n## License\n\nmotus is distributed under the [AGPL-3.0 license](https://github.com/oleiade/motus/blob/master/LICENSE).\n\n## Why the name?\n\nmotus used to be a tv game that I would call the ancestor of Wordle. Players had to guess words of a given size, and would pick up balls from a cup to decide how each round would move along. They would make that very distinct move to scramble the balls around every time, with a very distinct sound. When starting this project, I thought of the process of generating passwords as this comforting and satisfying act of diving into a huge cup full of numbered balls, and the childish feeling of it. This project is named in memory of Motus.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foleiade%2Fmotus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foleiade%2Fmotus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foleiade%2Fmotus/lists"}