<div align="center">
# gupsup
<em>A secure terminal-based chat application for real-time communication — right from your terminal.</em>
[](https://pepy.tech/projects/gupsup)
[](https://pypi.org/project/gupsup/)
[](https://pypi.org/project/gupsup/)
Learn more and explore detailed info at [gupsup-cli](https://gupsup-cli.vercel.app/)
Looking for the server? See [gupsup-server](https://github.com/iamRahul21/terminalchat-server)
</div>
## ⚡ Quick Start
```bash
pip install gupsup
gupsup
```
[](https://pypi.org/project/gupsup/)
That's it! Start chatting instantly.
## Features
- **Zero-friction setup** - Just run `gupsup` and start chatting
- **End-to-end encryption** - Messages are encrypted on your device and only readable by others with the same channel code
- **Secure channels** - Create private rooms with shareable codes
- **Auto-reconnection** - Handles network issues gracefully
- **Cross-platform** - Works on Windows, macOS, Linux
- **No account required** - Anonymous secure communication
## Usage
```bash
# Install once
pip install gupsup
# Run anywhere
gupsup
```
### Example Session
```
gupsup - Secure Communication Channel
Channel code (or 'new' to create): new
Channel created: a4b2c1
Share code 'a4b2c1' with others to join
Username: qwerty
Establishing connection...
🟢 Connected to channel: a4b2c1
Commands: Type messages to send, 'quit' to exit
qwerty: Hello world!
mrrobot: Hey there!
qwerty: quit
Terminating session.
```
## How It Works
1. **Create or join** a secure channel with a 6-character code
2. **Share the code** with people you want to chat with
3. **Chat securely** - messages are only sent to your channel
4. **No persistence** - messages disappear when you disconnect
## Security & Privacy
- **End-to-end encryption** - Only clients with the same channel code and updated app can read your messages
- **Channel isolation** - Only people with your code can join
- **No message storage** - Everything is real-time only
- **No accounts** - Completely anonymous
- **Secure transport** - All communication encrypted in transit
## Development Install
```bash
# Client:
git clone https://github.com/iamRahul21/gupsup.git
cd gupsup
pip install -e .
gupsup
# Server (required to host your own backend):
git clone https://github.com/iamRahul21/gupsup-server.git
cd gupsup-server
pip install -r requirements.txt
python main.py
```
## Commands
- **Type normally** to send messages
- **`quit`** or **`exit`** to leave
- **Ctrl+C** to force quit
- **Enter without text** is ignored
## Troubleshooting
<details>
<summary><strong>Encrypted messages look garbled or cause errors in old clients?</strong></summary>
- Make sure all users are on the latest version of the app to support end-to-end encryption.
</details>
<details>
<summary><strong>Connection timeouts?</strong></summary>
- First connection may be slow (server waking up)
- Try again - should connect immediately
- Check internet connection
</details>
<details>
<summary><strong>Messages not appearing?</strong></summary>
- Ensure same channel code
- Check if others are actually connected
- Try creating a new channel
</details>
## 📦 Package Details
- **Package**: `gupsup` on PyPI
- **Command**: `gupsup`
- **Python**: 3.8+ required
- **Dependencies**: Only `websockets>=11.0`
- **Size**: Ultra-lightweight
## Architecture
```
Terminal Client ←→ WebSocket ←→ FastAPI Server ←→ Channel Manager
(gupsup) (see: https://github.com/iamRahul21/gupsup-server)
```
## Contributing
1. Fork on GitHub
2. Create feature branch
3. Test thoroughly
4. Submit pull request
## 📄 License
MIT License - use freely, contribute back.
## Author
**[Rahul Deka](https://rahul-deka.vercel.app/)**
---
**Simple. Secure. Terminal-native.**
Raw data
{
"_id": null,
"home_page": "https://github.com/iamRahul21/terminalchat",
"name": "gupsup",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "chat, terminal, websocket, real-time",
"author": "Rahul Deka",
"author_email": "Rahul Deka <rahuldeka072@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/41/97/3305f347747920f2f8e32df5ffb28ba9a6597b4d4e30a35ee6732386ca6d/gupsup-1.0.3.tar.gz",
"platform": null,
"description": "<div align=\"center\">\r\n\r\n# gupsup\r\n\r\n<em>A secure terminal-based chat application for real-time communication \u2014 right from your terminal.</em>\r\n\r\n[](https://pepy.tech/projects/gupsup)\r\n[](https://pypi.org/project/gupsup/)\r\n[](https://pypi.org/project/gupsup/)\r\n\r\nLearn more and explore detailed info at [gupsup-cli](https://gupsup-cli.vercel.app/)\r\n\r\nLooking for the server? See [gupsup-server](https://github.com/iamRahul21/terminalchat-server)\r\n</div>\r\n\r\n\r\n\r\n## \u26a1 Quick Start\r\n\r\n```bash\r\npip install gupsup\r\ngupsup\r\n```\r\n\r\n[](https://pypi.org/project/gupsup/)\r\n\r\nThat's it! Start chatting instantly.\r\n\r\n## Features\r\n\r\n- **Zero-friction setup** - Just run `gupsup` and start chatting\r\n- **End-to-end encryption** - Messages are encrypted on your device and only readable by others with the same channel code\r\n- **Secure channels** - Create private rooms with shareable codes \r\n- **Auto-reconnection** - Handles network issues gracefully\r\n- **Cross-platform** - Works on Windows, macOS, Linux\r\n- **No account required** - Anonymous secure communication\r\n\r\n## Usage\r\n\r\n```bash\r\n# Install once\r\npip install gupsup\r\n\r\n# Run anywhere\r\ngupsup\r\n```\r\n\r\n### Example Session\r\n```\r\ngupsup - Secure Communication Channel\r\nChannel code (or 'new' to create): new\r\nChannel created: a4b2c1\r\nShare code 'a4b2c1' with others to join\r\nUsername: qwerty\r\n\r\nEstablishing connection...\r\n\ud83d\udfe2 Connected to channel: a4b2c1\r\nCommands: Type messages to send, 'quit' to exit\r\n\r\nqwerty: Hello world!\r\nmrrobot: Hey there!\r\nqwerty: quit\r\nTerminating session.\r\n```\r\n\r\n## How It Works\r\n\r\n1. **Create or join** a secure channel with a 6-character code\r\n2. **Share the code** with people you want to chat with\r\n3. **Chat securely** - messages are only sent to your channel\r\n4. **No persistence** - messages disappear when you disconnect\r\n\r\n## Security & Privacy\r\n\r\n- **End-to-end encryption** - Only clients with the same channel code and updated app can read your messages\r\n- **Channel isolation** - Only people with your code can join\r\n- **No message storage** - Everything is real-time only\r\n- **No accounts** - Completely anonymous\r\n- **Secure transport** - All communication encrypted in transit\r\n\r\n## Development Install\r\n```bash\r\n# Client:\r\ngit clone https://github.com/iamRahul21/gupsup.git\r\ncd gupsup\r\npip install -e .\r\ngupsup\r\n\r\n# Server (required to host your own backend):\r\ngit clone https://github.com/iamRahul21/gupsup-server.git\r\ncd gupsup-server\r\npip install -r requirements.txt\r\npython main.py\r\n```\r\n\r\n## Commands\r\n\r\n- **Type normally** to send messages\r\n- **`quit`** or **`exit`** to leave\r\n- **Ctrl+C** to force quit\r\n- **Enter without text** is ignored\r\n\r\n## Troubleshooting\r\n\r\n<details>\r\n<summary><strong>Encrypted messages look garbled or cause errors in old clients?</strong></summary>\r\n\r\n- Make sure all users are on the latest version of the app to support end-to-end encryption.\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Connection timeouts?</strong></summary>\r\n\r\n- First connection may be slow (server waking up)\r\n- Try again - should connect immediately\r\n- Check internet connection\r\n\r\n</details>\r\n\r\n<details>\r\n<summary><strong>Messages not appearing?</strong></summary>\r\n\r\n- Ensure same channel code\r\n- Check if others are actually connected\r\n- Try creating a new channel\r\n\r\n</details>\r\n\r\n## \ud83d\udce6 Package Details\r\n\r\n- **Package**: `gupsup` on PyPI\r\n- **Command**: `gupsup` \r\n- **Python**: 3.8+ required\r\n- **Dependencies**: Only `websockets>=11.0`\r\n- **Size**: Ultra-lightweight\r\n\r\n## Architecture\r\n\r\n```\r\nTerminal Client \u2190\u2192 WebSocket \u2190\u2192 FastAPI Server \u2190\u2192 Channel Manager\r\n (gupsup) (see: https://github.com/iamRahul21/gupsup-server)\r\n```\r\n\r\n## Contributing\r\n\r\n1. Fork on GitHub\r\n2. Create feature branch\r\n3. Test thoroughly \r\n4. Submit pull request\r\n\r\n## \ud83d\udcc4 License\r\n\r\nMIT License - use freely, contribute back.\r\n\r\n## Author\r\n\r\n**[Rahul Deka](https://rahul-deka.vercel.app/)**\r\n\r\n---\r\n\r\n**Simple. Secure. Terminal-native.**\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Secure terminal-based chat application for real-time communication",
"version": "1.0.3",
"project_urls": {
"Homepage": "https://github.com/iamRahul21/terminalchat",
"Issues": "https://github.com/iamRahul21/terminalchat/issues",
"Repository": "https://github.com/iamRahul21/terminalchat"
},
"split_keywords": [
"chat",
" terminal",
" websocket",
" real-time"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "12ac516fb3c60c938d3abd237476d5432343c4fdab0e36cab1c13021b6a3f81e",
"md5": "c1b9b4f29af358f3ffeb697acb335740",
"sha256": "a45925e8eb1abb613e94140e2116110cdd623c20fd74d5370070d20f86753099"
},
"downloads": -1,
"filename": "gupsup-1.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c1b9b4f29af358f3ffeb697acb335740",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7572,
"upload_time": "2025-08-21T09:32:46",
"upload_time_iso_8601": "2025-08-21T09:32:46.771482Z",
"url": "https://files.pythonhosted.org/packages/12/ac/516fb3c60c938d3abd237476d5432343c4fdab0e36cab1c13021b6a3f81e/gupsup-1.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "41973305f347747920f2f8e32df5ffb28ba9a6597b4d4e30a35ee6732386ca6d",
"md5": "fd18b0583f45778ab284dece6ea70cda",
"sha256": "4dc4a93b90f8064747dfc5db184cb103ad99d6707b191d41132109b84ff027aa"
},
"downloads": -1,
"filename": "gupsup-1.0.3.tar.gz",
"has_sig": false,
"md5_digest": "fd18b0583f45778ab284dece6ea70cda",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 7034,
"upload_time": "2025-08-21T09:32:47",
"upload_time_iso_8601": "2025-08-21T09:32:47.813436Z",
"url": "https://files.pythonhosted.org/packages/41/97/3305f347747920f2f8e32df5ffb28ba9a6597b4d4e30a35ee6732386ca6d/gupsup-1.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-21 09:32:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iamRahul21",
"github_project": "terminalchat",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "gupsup"
}