Metadata-Version: 2.4
Name: ChaTerminal
Version: 2.0.1
Summary: A terminal-based encrypted chat system for MemerDevs
Home-page: https://github.com/Gofaone315/ChaTerminal
Author: Gofaone Tlalang
Author-email: gofaone315@memerdevs.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Classifier: Topic :: Communications :: Chat
Classifier: Topic :: Security :: Cryptography
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: colorama
Requires-Dist: pyfiglet
Requires-Dist: pyreadline3; platform_system == "windows"
Requires-Dist: requests
Requires-Dist: cryptography
Requires-Dist: rich
Requires-Dist: prompt_toolkit
Requires-Dist: keyring
Requires-Dist: websocket-client
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# ChaTerminal

**ChaTerminal** is the official terminal client for [MemerDevs](https://memerdevs.com). Chat with other MemerDevs users in real-time — end-to-end encrypted, right from your terminal.

![Python](https://img.shields.io/badge/Python-3.10+-blue.svg)
![License](https://img.shields.io/github/license/Gofaone315/ChaTerminal)
![Platform](https://img.shields.io/badge/Platform-Terminal-informational)
![Version](https://img.shields.io/badge/Version-2.0.0-brightgreen)

---

## Features

- 🔒 **End-to-end encrypted** direct messages — nobody but you and the recipient can read them
- ⚡ **Real-time** messaging — messages arrive instantly with a sound alert
- 💬 **Direct messaging** to any MemerDevs user
- 👥 **See who's online** at any time
- 🛡️ **One active device** — logging in on a new device automatically signs out the previous one
- 📜 **Chat history** — your last 15 messages are shown on startup

---

## Installation

You need **Python 3.10 or later**. Then install with pip:

```bash
pip install ChaTerminal
```

---

## Quick Start

### Step 1 — Run ChaTerminal

Open your terminal and run:

```bash
chaterminal
```

### Step 2 — Link your MemerDevs account

If this is your first time (or you've been logged out), ChaTerminal will show you an **activation code**:

```
╭─────────────────────────────────────────╮
│          ChaTerminal — Link Account     │
│                                         │
│  1. Open MemerDevs in browser           │
│  2. Go to Settings → ChaTerminal        │
│  3. Enter the activation code           │
│                                         │
│              A1B2C3D4                   │
│                                         │
│       Waiting for authorisation 04:59   │
╰─────────────────────────────────────────╯
```

1. Go to [memerdevs.com/settings](https://memerdevs.com/settings)
2. Scroll to the **ChaTerminal** section
3. Enter the code in the **Link Terminal** field and click **Link**

Your terminal is now linked to your MemerDevs account! 🎉

### Step 3 — Start chatting

Once connected, you'll see your recent message history and a prompt:

```
> 
```

Type a command and hit **Enter**.

---

## Commands

| Command                     | What it does                                 |
|-----------------------------|----------------------------------------------|
| `/dm <username> <message>`  | Send a private message to a user             |
| `/list`                     | Show users who are currently online          |
| `/exit`                     | Disconnect and close ChaTerminal             |

### Examples

Send a message:
```
> /dm gofaone315 Hey, are you there?
```

See who's online:
```
> /list
```

---

## Tips

- **Usernames** are your MemerDevs username slugs (e.g. if your profile URL is `memerdevs.com/u/johndoe`, your username is `johndoe`).
- Messages are **end-to-end encrypted** — they are encrypted on your machine before being sent and can only be decrypted by the recipient.
- ChaTerminal plays a **sound alert** when you receive a new message.
- If someone logs into your account on another device, you'll be **automatically signed out** of the terminal for security.
- To **revoke** your terminal session from the web, go to [memerdevs.com/settings](https://memerdevs.com/settings) → ChaTerminal → **Revoke Session**.

---

## License

This project is proprietary. See `LICENSE` for more info.

## Author

**Gofaone Tlalang**  
GitHub: [@Gofaone315](https://github.com/Gofaone315)

---

**ChaTerminal** – Real-time E2EE chat, right from your terminal.
