Metadata-Version: 2.4
Name: sahajmails
Version: 0.0.1
Summary: Simple, secure bulk email sender using Gmail + Streamlit
Author-email: Sahaj Raj Malla <mallasahajraj@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/sahajrajmalla/sahajmails
Project-URL: Repository, https://github.com/sahajrajmalla/sahajmails
Project-URL: Documentation, https://github.com/sahajrajmalla/sahajmails/blob/main/docs/USER_GUIDE.md
Project-URL: Issues, https://github.com/sahajrajmalla/sahajmails/issues
Keywords: email,bulk-email,streamlit,gmail,marketing,personalization,csv
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Developers
Classifier: Topic :: Communications :: Email
Classifier: Topic :: Office/Business
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: streamlit>=1.29.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: markdown>=3.4.0
Provides-Extra: test
Requires-Dist: pytest>=7.0; extra == "test"
Provides-Extra: dev
Requires-Dist: build>=1.0; extra == "dev"
Requires-Dist: twine>=4.0; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"
Requires-Dist: flake8>=6.0; extra == "dev"
Requires-Dist: pytest>=7.0; extra == "dev"
Dynamic: license-file

<div align="center">

# SahajMails

**Send personalized bulk emails — Free, Secure, Simple**

No servers. No coding. Just upload, type, send.

[![PyPI version](https://badge.fury.io/py/sahajmails.svg)](https://badge.fury.io/py/sahajmails)
[![Python 3.8+](https://img.shields.io/badge/python-3.8%2B-blue)](https://python.org)
[![License: MIT](https://img.shields.io/badge/license-MIT-green)](LICENSE)

</div>

---

## Features

- **100% Local**: Your data never leaves your device  
- **Gmail App Password**: Secure authentication (no real password used)  
- **CSV/Excel Upload**: Supports `.csv`, `.xlsx`, `.xls`  
- **Smart Placeholders**: `{{ firstName }}` — case and space tolerant  
- **Live Preview**: Real-time HTML rendering  
- **Test Email**: Send to yourself before bulk  
- **Attachments**: PDFs, images, documents  
- **Progress Tracking**: Real-time log and progress bar  
- **Markdown & HTML**: Full email formatting support  
- **Gmail-Safe**: 2-second delay between sends  

---

## Quick Start

```bash
pip install sahajmails
sahajmails
```

Open [http://localhost:8501](http://localhost:8501)

---

## 7-Step Guide

1. **Upload** your contact list (must have `email` column)  
2. **Enter** your Gmail and **App Password**  
3. **Compose** email using `{{ columnName }}` placeholders  
4. **Click** placeholder buttons to copy instantly  
5. **Attach** files (optional)  
6. **Preview** → **Send Test Email**  
7. **Start Bulk Send** → Watch progress

**Example CSV:**
```csv
email,firstName,company
alice@example.com,Alice,Acme Corp
bob@work.com,Bob,StartupXYZ
```

---

## Gmail App Password (Required)

1. Go to [myaccount.google.com/security](https://myaccount.google.com/security)  
2. Enable **2-Step Verification**  
3. Search **"App Passwords"**  
4. Select **Mail** → **Windows Computer** → **Generate**  
5. Copy the **16-character password** → paste in the app

> Never use your real Gmail password.

---

## Installation

```bash
pip install sahajmails
```

Or from source:

```bash
git clone https://github.com/sahajrajmalla/sahajmails.git
cd sahajmails
pip install -e .
```

---

## Development

```bash
# Install dev dependencies
pip install -e .[dev]

# Run tests
pytest tests/

# Build package
python -m build
```

---

## Contributing

Contributions are welcome!  

1. Fork the repo  
2. Create a branch: `git checkout -b feature/your-idea`  
3. Commit changes: `git commit -m "feat: add X"`  
4. Push and open a Pull Request  

Please follow PEP 8 and include tests.

---

## Security & Privacy

- Runs **entirely on your machine**  
- **No data is stored or transmitted**  
- **Open source** under MIT License  
- Uses **Gmail App Passwords** only  

---

## License

[MIT License](LICENSE) – Free for personal and commercial use.

---

<div align="center">

Made with ❤️ by [Sahaj Raj Malla](https://github.com/sahajrajmalla)  
Kathmandu, Nepal

</div>
