Crushing the Command Line: Automating Email Reading with Python & Amazon Q Developer

Terminal Email Reader: A Python Automation Project Introduction As a student balancing classes, freelance work, and personal tasks, I wanted a way to check my Gmail quickly—without leaving the terminal. So I built a Python script that fetches unread emails and displays them right in the command line, showing the sender, subject, and body. Thanks to Amazon Q Developer CLI, I streamlined the development process by asking coding questions directly in my terminal. This is my submission for the "Crushing the Command Line" prompt of the Amazon Q Developer "Quack The Code" Challenge. What My Project Does This script: Logs into Gmail using IMAP with credentials stored securely in a .env file Fetches and decodes unread emails Prints cleanly formatted output (sender, subject, and body) in the terminal Uses .gitignore to exclude sensitive files (like .env) How I Used Amazon Q Developer Amazon Q Developer CLI acted like a coding assistant: Security Setup: Asked how to manage .env files safely in Python projects. IMAP Debugging: Helped troubleshoot email-fetching logic and MIME decoding. Code Simplification: Suggested improvements to reduce complexity and improve readability. Without Q Developer, I’d have spent hours Googling—instead, I got answers right in my terminal. What I Learned How to use IMAP to access Gmail programmatically Securing credentials with python-dotenv and .gitignore Decoding MIME email formats (especially tricky with Gmail’s encoding) How powerful Amazon Q Developer is for real-time debugging and learning How to Run the Script Clone the repo: git clone https://github.com/hann2004/email-automation.git cd email-automation Set up your .env file: EMAIL=your-email@gmail.com PASSWORD=your-app-password # Generate this in Gmail settings Note: Never commit .env to version control. Install dependencies: pip install -r requirements.txt Run it: python email_automation.py Note: Enable IMAP in Gmail settings and create an App Password if you use 2FA. GitHub Repository https://github.com/hann2004/email-automation Final Thoughts This project taught me how powerful command-line automation can be—and how tools like Amazon Q Developer make coding faster and more intuitive. Next, I’d love to add features like email filtering or mark-as-read functionality. Thanks for reading! Feedback is welcome.

May 10, 2025 - 21:11
 0
Crushing the Command Line: Automating Email Reading with Python & Amazon Q Developer

Terminal Email Reader: A Python Automation Project

Introduction

As a student balancing classes, freelance work, and personal tasks, I wanted a way to check my Gmail quickly—without leaving the terminal. So I built a Python script that fetches unread emails and displays them right in the command line, showing the sender, subject, and body.

Thanks to Amazon Q Developer CLI, I streamlined the development process by asking coding questions directly in my terminal. This is my submission for the "Crushing the Command Line" prompt of the Amazon Q Developer "Quack The Code" Challenge.

What My Project Does

This script:

  • Logs into Gmail using IMAP with credentials stored securely in a .env file
  • Fetches and decodes unread emails
  • Prints cleanly formatted output (sender, subject, and body) in the terminal
  • Uses .gitignore to exclude sensitive files (like .env)

How I Used Amazon Q Developer

Amazon Q Developer CLI acted like a coding assistant:

  • Security Setup: Asked how to manage .env files safely in Python projects.
  • IMAP Debugging: Helped troubleshoot email-fetching logic and MIME decoding.
  • Code Simplification: Suggested improvements to reduce complexity and improve readability.

Without Q Developer, I’d have spent hours Googling—instead, I got answers right in my terminal.

What I Learned

  • How to use IMAP to access Gmail programmatically
  • Securing credentials with python-dotenv and .gitignore
  • Decoding MIME email formats (especially tricky with Gmail’s encoding)
  • How powerful Amazon Q Developer is for real-time debugging and learning

How to Run the Script

  1. Clone the repo:
   git clone https://github.com/hann2004/email-automation.git
   cd email-automation
  1. Set up your .env file:
   EMAIL=your-email@gmail.com
   PASSWORD=your-app-password  # Generate this in Gmail settings

Note: Never commit .env to version control.

  1. Install dependencies:
   pip install -r requirements.txt
  1. Run it:
   python email_automation.py

Note: Enable IMAP in Gmail settings and create an App Password if you use 2FA.

GitHub Repository

https://github.com/hann2004/email-automation

Final Thoughts

This project taught me how powerful command-line automation can be—and how tools like Amazon Q Developer make coding faster and more intuitive. Next, I’d love to add features like email filtering or mark-as-read functionality.

Thanks for reading! Feedback is welcome.