{"id":15070078,"url":"https://github.com/avikumar15/quick-mail-cli","last_synced_at":"2026-06-08T20:16:56.858Z","repository":{"id":57459432,"uuid":"318679783","full_name":"avikumar15/quick-mail-cli","owner":"avikumar15","description":"A command-line interface to send mail quickly and without any hassle.","archived":false,"fork":false,"pushed_at":"2021-11-02T09:49:04.000Z","size":104,"stargazers_count":15,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-23T18:50:12.938Z","etag":null,"topics":["cli","cli-app","command-line-tool","commandline","communication","gmail","linux","mail","python","python-3","python3","terminal","unix"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/avikumar15.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}},"created_at":"2020-12-05T01:58:09.000Z","updated_at":"2025-07-13T15:47:49.000Z","dependencies_parsed_at":"2022-09-05T19:00:24.590Z","dependency_job_id":null,"html_url":"https://github.com/avikumar15/quick-mail-cli","commit_stats":null,"previous_names":["avikumar15/quick-email-cli"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/avikumar15/quick-mail-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avikumar15%2Fquick-mail-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avikumar15%2Fquick-mail-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avikumar15%2Fquick-mail-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avikumar15%2Fquick-mail-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avikumar15","download_url":"https://codeload.github.com/avikumar15/quick-mail-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avikumar15%2Fquick-mail-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34078936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"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":["cli","cli-app","command-line-tool","commandline","communication","gmail","linux","mail","python","python-3","python3","terminal","unix"],"created_at":"2024-09-25T01:46:56.833Z","updated_at":"2026-06-08T20:16:56.840Z","avatar_url":"https://github.com/avikumar15.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Quick Mail CLI\n=================\n\n[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)\n\n[![PyPi version](https://badgen.net/pypi/v/quick-mail/)](https://pypi.org/project/quick-mail/)\n[![PyPI download month](https://img.shields.io/pypi/dm/quick-mail.svg)](https://pypi.python.org/pypi/quick-mail/)\n\nA command line interface to send mail without any hassle.\n\n## Why this tool?\n\nSending last minute mails using conventional tools can get annoying and tiresome. This CLI helps in such situation since it makes sending mail hassle-free and very quick. Use this tool to send mails quickly without leaving your terminal.\n\n## Installation\n\n1. Generate your [OAuth client ID](https://console.developers.google.com/apis/credentials/) and select app type as Desktop App and download the credentials.json file.\n\n2. Install quick-mail from any of the following methods \n\n\t* The Python Package Index (PyPi)\n\t\n\t\t```\n\t\t$ pip install quick-mail\n\t\t```\n\n\t* From the source-code\n\n\t\t```\n\t\t$ git clone https://github.com/avikumar15/quick-mail-cli\n\n\t\t* add line export PYTHONPATH=/path/to/project/quick-email-cli to ~/.bashrc *\n\n\t\t$ cd quick-mail-cli/\n\n\t\t* activate virtual environment *\n\n\t\t$ pip install -r requirements.txt\n\t\t$ pip install .\n\t\t ```\n\n\n\t* By creating a docker image\n\n\t\tClone this repository and add credentials.json to the project root (Same directory as Dockerfile) and run following commands.\n\n\t\t```\n\t\tdocker build .\n\t\tdocker run -i -t --network=\"host\" \u003cIMAGE_ID\u003e\n\t\t\t$ quickmail init credentials.json\n\t\t\t$ * authenticate using your mail *\n\t\t\t$ exit\n\t\tdocker commit \u003cCONTAINER_ID\u003e NEW_IMAGE_NAME:NEW_IMAGE_TAG\n\t\t```\n\n\t\tand then subsequently just run\n\t\n\t\t```\n\t\tdocker run -i -t \u003cNEW_IMAGE_ID\u003e\n\t\t```\n\n3. Check installation by running\n\t\n\t```\n\t$ quickmail --version\n\t```\n\n## Usage\n\n\nTo use this:\n\n\t$ quickmail --help\n\n\u003ch3\u003e\u003c/h3\u003e\n\n```\nusage: quickmail [-h] [-v] {clear,init,send,template} ...\n\nA command line interface to send mail without any hassle\n\npositional arguments:\n  {clear,init,send,template}\n    clear               clear the body of message from local or even the token if\n                        --justdoit argument is added\n    init                initialise token and set your email id\n    send                send the mail\n    template            manage templates of mail body\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -v, --version         print current cli version\n\n```\n\n\u003ch2\u003e\u003c/h2\u003e\n\nRun the init command to authenticate gmail, and generate token. This command is required to be run only once.\n\n```\n$ quickmail init \u003cpath/to/credentials.json\u003e\n```\n\nNow you are all set. Use the send command to send mail.\n\n\n\t$ quickmail send --help\n\n\u003ch3\u003e\u003c/h3\u003e\n\n```\nusage: quickmail send [-h] -r RECEIVER -sub SUBJECT [-t TEMPLATE] [-b BODY]\n                      [-a ATTACHMENT] [-l]\n\nUse the send command to send mail. Body can be passed as an argument, or typed in\na nano shell. Use optional --lessgo command for sending mail without confirmation\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -r RECEIVER, --receiver RECEIVER\n                        receiver's email address, eg. '-r \"xyz@gmail.com\"'\n  -sub SUBJECT, --subject SUBJECT\n                        email's subject, eg. '-sub \"XYZ submission\"'\n  -t TEMPLATE, --template TEMPLATE\n                        template of email body, eg. '-t=\"assignment_template\"'\n  -b BODY, --body BODY  email's body, eg. '-b \"Message Body Comes Here\"'\n  -a ATTACHMENT, --attachment ATTACHMENT\n                        email's attachment path, eg. '~/Desktop/XYZ_Endsem.pdf'\n  -l, --lessgo          skip confirmation before sending mail\n\n```\n\nBody and attachments are optional arguments. Body can be either passed as an argument otherwise it can also be typed in the nano shell (Use -t argument to use a template body). Use the --lessgo (shorthand -l) to skip confirmation of mail, for quicker mail deliveries.\n\nTo clear the cli storage, use the clear command. Use --justdoit (shorthand -j) to even remove the credential and token files from project directory, this extra argument would allow you to change your primary email address.\n\n\n\t$ quickmail clear --help\n\n\u003ch3\u003e\u003c/h3\u003e\n\n```\nusage: quickmail clear [-h] [-j]\n\nUse the clear command to clear all email body that are saved in your home\ndirectories. Additionally, pass --justdoit to remove the credential files as well\n\noptional arguments:\n  -h, --help      show this help message and exit\n  -j, --justdoit  clear storage including the credentials and token\n\n```\n\nTo manage templates use the template command.\n\n\t$ quickmail template --help\n\t\n\u003ch3\u003e\u003c/h3\u003e\n\n```\nusage: quickmail template [-h] {add,listall,edit} ...\n\nmanage mail templates\n\npositional arguments:\n  {add,listall,edit}\n    add               add a new template\n    listall           list all templates\n    edit              edit a particular template\n\noptional arguments:\n  -h, --help          show this help message and exit\n\n```\n\nFollowing is a recording of the terminal session which records the usage of `quickmail` from init command till send command. \n\n\u003ch3\u003e\u003c/h3\u003e\n\n[![asciicast](https://asciinema.org/a/78mPkSTa0rTK3TXhnkgRDP6RO.svg)](https://asciinema.org/a/78mPkSTa0rTK3TXhnkgRDP6RO)\n\n### Improvements and Bugs\n\nFound any bugs? Or have any suggestions, feel free to open an issue.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favikumar15%2Fquick-mail-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favikumar15%2Fquick-mail-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favikumar15%2Fquick-mail-cli/lists"}