ChaTerminal 1.0.2__tar.gz → 1.0.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,33 @@
1
+ from cha_terminal import client
2
+ import sys
3
+
4
+
5
+ def main():
6
+ if len(sys.argv) == 1:
7
+ # Default: launch the E2EE chat client (activation code flow)
8
+ client.main()
9
+ return
10
+
11
+ mode = sys.argv[1]
12
+
13
+ if mode in ("start", "connect", "chat", "client"):
14
+ client.main()
15
+
16
+ elif mode == "login":
17
+ # Pre-warm: initialise device + run login/linking flow only
18
+ client.init_db()
19
+ client.init_device_id()
20
+ client.login_flow()
21
+
22
+ elif mode in ("-h", "--help", "help"):
23
+ print(
24
+ "\nChaTerminal — E2EE CLI Chat for MemerDevs\n"
25
+ "\nUsage:\n"
26
+ " chaterminal Start the chat client (shows activation code on first run)\n"
27
+ " chaterminal login Pre-link your MemerDevs account\n"
28
+ " chaterminal help Show this help message\n"
29
+ )
30
+
31
+ else:
32
+ print(f"[!] Unknown command '{mode}'. Run 'chaterminal help' for usage.")
33
+ sys.exit(1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ChaTerminal
3
- Version: 1.0.2
3
+ Version: 1.0.3
4
4
  Summary: A terminal-based encrypted chat system for LAN and remote connections
5
5
  Home-page: https://github.com/Gofaone315/ChaTerminal
6
6
  Author: Gofaone Tlalang
@@ -17,6 +17,11 @@ License-File: LICENSE
17
17
  Requires-Dist: colorama
18
18
  Requires-Dist: pyfiglet
19
19
  Requires-Dist: pyreadline3; platform_system == "windows"
20
+ Requires-Dist: requests
21
+ Requires-Dist: cryptography
22
+ Requires-Dist: rich
23
+ Requires-Dist: prompt_toolkit
24
+ Requires-Dist: keyring
20
25
  Dynamic: author
21
26
  Dynamic: author-email
22
27
  Dynamic: classifier
@@ -30,7 +35,7 @@ Dynamic: summary
30
35
 
31
36
  # ChaTerminal
32
37
 
33
- **ChaTerminal** is a cross-platform terminal-based encrypted chat system built with Python. It supports multiple users on a local network or via tunneling tools like Ngrok or LocalXpose, providing a lightweight and interactive chat experience — right from the terminal.
38
+ **ChaTerminal** is a cross-platform terminal-based encrypted chat system built with Python and now part of the [MemerDevs](https://memerdevs.com) platform. It uses a centralized backend architecture to enable secure multi-user communication over the internet, providing a lightweight and interactive chat experience — right from the terminal.
34
39
 
35
40
  ![Python](https://img.shields.io/badge/Python-3.9+-blue.svg)
36
41
  ![License](https://img.shields.io/github/license/Gofaone315/ChaTerminal)
@@ -38,19 +43,15 @@ Dynamic: summary
38
43
 
39
44
  ## Features
40
45
 
41
- - **Encrypted communication** using custom crypto utilities
42
- - **Multi-user chat** over LAN or tunneled internet
46
+ - **MemerDevs SSO** for seamless terminal linking
47
+ - **Multi-user chat** seamlessly over the internet
43
48
  - **Color-coded messages** with timestamp formatting
44
49
  - **Auto-complete** for commands via `readline` and TAB
45
50
  - **Direct messaging** using `/dm <user> <message>`
46
- - **Username renaming** with `/rename <new_name>`
47
51
  - **List online users** using `/list`
48
- - **Admin controls**: `/kick <user>` (admin-only)
49
- - **Emote support**: `/me <action>`
50
52
  - **Help menu**: `/help` displays command reference
51
53
  - **User join/leave notifications**
52
- - **Sound alert** for DMs and admin actions
53
- - **Graceful client disconnect and server feedback**
54
+ - **Graceful client disconnect and remote session revocation**
54
55
  - **Color personalization** based on username hash
55
56
 
56
57
  ## Getting Started
@@ -66,67 +67,41 @@ Dynamic: summary
66
67
  pip install ChaTerminal
67
68
  ```
68
69
 
69
- ### Running the Server
70
-
71
- ```bash
72
- python -m ChaTerminal init server
73
- ```
74
-
75
- - Enter a port (e.g., `5555`) and the admin username
76
- - Displays local IP with instructions for LAN or tunneled access
77
-
78
70
  ### Running the Client
79
71
 
80
- In a **new terminal window**:
72
+ In your terminal:
81
73
 
82
74
  ```bash
83
- python -m ChaTerminal init client
75
+ ChaTerminal init client
84
76
  ```
85
77
 
86
- - Enter the server IP, port, and a unique username
78
+ Then follow the on-screen instructions to link your MemerDevs account!
87
79
 
88
80
  ## Commands
89
81
 
90
82
  | Command | Description |
91
83
  |---------------------|------------------------------------------|
92
84
  | `/dm <user> <msg>` | Send a private message |
93
- | `/kick <user>` | Kick a user (admin only) |
94
85
  | `/list` | View online users |
95
- | `/rename <name>` | Change your username |
96
- | `/me <action>` | Send an action/emote (e.g., waves) |
97
86
  | `/help` | Show all available commands |
98
87
 
99
- ## Networking Tips
88
+ ## MemerDevs SSO Integration
100
89
 
101
- To let others join:
102
-
103
- - **Local network**: Share the IP and port printed on server start
104
- - **Ngrok**: `ngrok tcp <port>`
105
- - **LocalXpose**: `./lx tcp <port>`
106
- - **Port Forwarding**: Map the server's port on your router
107
-
108
- ## Example
109
-
110
- ```bash
111
- # Start server
112
- $ python -m ChaTerminal init server
113
- Port: 5555
114
- Admin Username: admin
115
-
116
- # Start client
117
- $ python -m ChaTerminal init client
118
- Server IP: 192.168.1.100
119
- Server Port: 5555
120
- Username: myname
121
- ```
90
+ ChaTerminal now natively integrates with **MemerDevs**!
122
91
 
123
- ## Security Note
92
+ You can link your terminal to your MemerDevs account:
93
+ 1. Generate an **Activation Code** from the MemerDevs Settings page under the "Link Terminal" tab.
94
+ 2. In your terminal, run the client initialization:
95
+ ```bash
96
+ ChaTerminal init client
97
+ ```
98
+ 3. Provide the generated activation code when prompted.
99
+ 4. ChaTerminal will securely poll the MemerDevs server, retrieve your session token, and automatically link your profile!
124
100
 
125
- All messages are encrypted using the `crypto_utils` module before transmission. Ensure that this module uses secure encryption practices for production deployments.
126
101
 
127
102
  ## License
128
103
 
129
- This project is licensed under the MIT License. See `LICENSE` for more info.
104
+ This project is proprietary. See `LICENSE` for more info.
130
105
 
131
106
  ## Author
132
107
 
@@ -13,5 +13,4 @@ ChaTerminal.egg-info/top_level.txt
13
13
  cha_terminal/__init__.py
14
14
  cha_terminal/client.py
15
15
  cha_terminal/crypto_utils.py
16
- cha_terminal/server.py
17
16
  cha_terminal/splash.py
@@ -1,5 +1,10 @@
1
1
  colorama
2
2
  pyfiglet
3
+ requests
4
+ cryptography
5
+ rich
6
+ prompt_toolkit
7
+ keyring
3
8
 
4
9
  [:platform_system == "windows"]
5
10
  pyreadline3
@@ -0,0 +1,11 @@
1
+ Copyright (c) 2026 Gofaone Tlalang
2
+
3
+ All Rights Reserved.
4
+
5
+ This software and associated documentation files (the "Software") are proprietary and confidential.
6
+ No part of this Software may be reproduced, distributed, or transmitted in any form or by any means,
7
+ including photocopying, recording, or other electronic or mechanical methods, without the prior
8
+ written permission of the copyright owner, except in the case of brief quotations embodied in
9
+ critical reviews and certain other noncommercial uses permitted by copyright law.
10
+
11
+ For permission requests, please contact the author directly.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ChaTerminal
3
- Version: 1.0.2
3
+ Version: 1.0.3
4
4
  Summary: A terminal-based encrypted chat system for LAN and remote connections
5
5
  Home-page: https://github.com/Gofaone315/ChaTerminal
6
6
  Author: Gofaone Tlalang
@@ -17,6 +17,11 @@ License-File: LICENSE
17
17
  Requires-Dist: colorama
18
18
  Requires-Dist: pyfiglet
19
19
  Requires-Dist: pyreadline3; platform_system == "windows"
20
+ Requires-Dist: requests
21
+ Requires-Dist: cryptography
22
+ Requires-Dist: rich
23
+ Requires-Dist: prompt_toolkit
24
+ Requires-Dist: keyring
20
25
  Dynamic: author
21
26
  Dynamic: author-email
22
27
  Dynamic: classifier
@@ -30,7 +35,7 @@ Dynamic: summary
30
35
 
31
36
  # ChaTerminal
32
37
 
33
- **ChaTerminal** is a cross-platform terminal-based encrypted chat system built with Python. It supports multiple users on a local network or via tunneling tools like Ngrok or LocalXpose, providing a lightweight and interactive chat experience — right from the terminal.
38
+ **ChaTerminal** is a cross-platform terminal-based encrypted chat system built with Python and now part of the [MemerDevs](https://memerdevs.com) platform. It uses a centralized backend architecture to enable secure multi-user communication over the internet, providing a lightweight and interactive chat experience — right from the terminal.
34
39
 
35
40
  ![Python](https://img.shields.io/badge/Python-3.9+-blue.svg)
36
41
  ![License](https://img.shields.io/github/license/Gofaone315/ChaTerminal)
@@ -38,19 +43,15 @@ Dynamic: summary
38
43
 
39
44
  ## Features
40
45
 
41
- - **Encrypted communication** using custom crypto utilities
42
- - **Multi-user chat** over LAN or tunneled internet
46
+ - **MemerDevs SSO** for seamless terminal linking
47
+ - **Multi-user chat** seamlessly over the internet
43
48
  - **Color-coded messages** with timestamp formatting
44
49
  - **Auto-complete** for commands via `readline` and TAB
45
50
  - **Direct messaging** using `/dm <user> <message>`
46
- - **Username renaming** with `/rename <new_name>`
47
51
  - **List online users** using `/list`
48
- - **Admin controls**: `/kick <user>` (admin-only)
49
- - **Emote support**: `/me <action>`
50
52
  - **Help menu**: `/help` displays command reference
51
53
  - **User join/leave notifications**
52
- - **Sound alert** for DMs and admin actions
53
- - **Graceful client disconnect and server feedback**
54
+ - **Graceful client disconnect and remote session revocation**
54
55
  - **Color personalization** based on username hash
55
56
 
56
57
  ## Getting Started
@@ -66,67 +67,41 @@ Dynamic: summary
66
67
  pip install ChaTerminal
67
68
  ```
68
69
 
69
- ### Running the Server
70
-
71
- ```bash
72
- python -m ChaTerminal init server
73
- ```
74
-
75
- - Enter a port (e.g., `5555`) and the admin username
76
- - Displays local IP with instructions for LAN or tunneled access
77
-
78
70
  ### Running the Client
79
71
 
80
- In a **new terminal window**:
72
+ In your terminal:
81
73
 
82
74
  ```bash
83
- python -m ChaTerminal init client
75
+ ChaTerminal init client
84
76
  ```
85
77
 
86
- - Enter the server IP, port, and a unique username
78
+ Then follow the on-screen instructions to link your MemerDevs account!
87
79
 
88
80
  ## Commands
89
81
 
90
82
  | Command | Description |
91
83
  |---------------------|------------------------------------------|
92
84
  | `/dm <user> <msg>` | Send a private message |
93
- | `/kick <user>` | Kick a user (admin only) |
94
85
  | `/list` | View online users |
95
- | `/rename <name>` | Change your username |
96
- | `/me <action>` | Send an action/emote (e.g., waves) |
97
86
  | `/help` | Show all available commands |
98
87
 
99
- ## Networking Tips
88
+ ## MemerDevs SSO Integration
100
89
 
101
- To let others join:
102
-
103
- - **Local network**: Share the IP and port printed on server start
104
- - **Ngrok**: `ngrok tcp <port>`
105
- - **LocalXpose**: `./lx tcp <port>`
106
- - **Port Forwarding**: Map the server's port on your router
107
-
108
- ## Example
109
-
110
- ```bash
111
- # Start server
112
- $ python -m ChaTerminal init server
113
- Port: 5555
114
- Admin Username: admin
115
-
116
- # Start client
117
- $ python -m ChaTerminal init client
118
- Server IP: 192.168.1.100
119
- Server Port: 5555
120
- Username: myname
121
- ```
90
+ ChaTerminal now natively integrates with **MemerDevs**!
122
91
 
123
- ## Security Note
92
+ You can link your terminal to your MemerDevs account:
93
+ 1. Generate an **Activation Code** from the MemerDevs Settings page under the "Link Terminal" tab.
94
+ 2. In your terminal, run the client initialization:
95
+ ```bash
96
+ ChaTerminal init client
97
+ ```
98
+ 3. Provide the generated activation code when prompted.
99
+ 4. ChaTerminal will securely poll the MemerDevs server, retrieve your session token, and automatically link your profile!
124
100
 
125
- All messages are encrypted using the `crypto_utils` module before transmission. Ensure that this module uses secure encryption practices for production deployments.
126
101
 
127
102
  ## License
128
103
 
129
- This project is licensed under the MIT License. See `LICENSE` for more info.
104
+ This project is proprietary. See `LICENSE` for more info.
130
105
 
131
106
  ## Author
132
107
 
@@ -0,0 +1,86 @@
1
+ # ChaTerminal
2
+
3
+ **ChaTerminal** is a cross-platform terminal-based encrypted chat system built with Python and now part of the [MemerDevs](https://memerdevs.com) platform. It uses a centralized backend architecture to enable secure multi-user communication over the internet, providing a lightweight and interactive chat experience — right from the terminal.
4
+
5
+ ![Python](https://img.shields.io/badge/Python-3.9+-blue.svg)
6
+ ![License](https://img.shields.io/github/license/Gofaone315/ChaTerminal)
7
+ ![Platform](https://img.shields.io/badge/Platform-Terminal-informational)
8
+
9
+ ## Features
10
+
11
+ - **MemerDevs SSO** for seamless terminal linking
12
+ - **Multi-user chat** seamlessly over the internet
13
+ - **Color-coded messages** with timestamp formatting
14
+ - **Auto-complete** for commands via `readline` and TAB
15
+ - **Direct messaging** using `/dm <user> <message>`
16
+ - **List online users** using `/list`
17
+ - **Help menu**: `/help` displays command reference
18
+ - **User join/leave notifications**
19
+ - **Graceful client disconnect and remote session revocation**
20
+ - **Color personalization** based on username hash
21
+
22
+ ## Getting Started
23
+
24
+ ### Requirements
25
+
26
+ - Python 3.9+
27
+ - pip packages: `colorama`, `pyfiglet`, `readline` (Linux/macOS), `pyreadline3` (Windows)
28
+
29
+ ### Installation
30
+
31
+ ```bash
32
+ pip install ChaTerminal
33
+ ```
34
+
35
+ ### Running the Client
36
+
37
+ In your terminal:
38
+
39
+ ```bash
40
+ ChaTerminal init client
41
+ ```
42
+
43
+ Then follow the on-screen instructions to link your MemerDevs account!
44
+
45
+ ## Commands
46
+
47
+ | Command | Description |
48
+ |---------------------|------------------------------------------|
49
+ | `/dm <user> <msg>` | Send a private message |
50
+ | `/list` | View online users |
51
+ | `/help` | Show all available commands |
52
+
53
+ ## MemerDevs SSO Integration
54
+
55
+ ChaTerminal now natively integrates with **MemerDevs**!
56
+
57
+ You can link your terminal to your MemerDevs account:
58
+ 1. Generate an **Activation Code** from the MemerDevs Settings page under the "Link Terminal" tab.
59
+ 2. In your terminal, run the client initialization:
60
+ ```bash
61
+ ChaTerminal init client
62
+ ```
63
+ 3. Provide the generated activation code when prompted.
64
+ 4. ChaTerminal will securely poll the MemerDevs server, retrieve your session token, and automatically link your profile!
65
+
66
+
67
+ ## License
68
+
69
+ This project is proprietary. See `LICENSE` for more info.
70
+
71
+ ## Author
72
+
73
+ **Gofaone Tlalang**
74
+ GitHub: [@Gofaone315](https://github.com/Gofaone315)
75
+
76
+ ## Contributors ✨
77
+
78
+ Thanks goes to these wonderful people:
79
+
80
+ <a href = "https://github.com/Tanu-N-Prabhu/Python/graphs/contributors">
81
+ <img src = "https://contrib.rocks/image?repo=Gofaone315/ChaTerminal"/>
82
+ </a>
83
+
84
+ ---
85
+
86
+ **ChaTerminal** – Real-time encrypted chat, right from your terminal.