Skip to content

Commit 2f970bc

Browse files
author
Mesh-Pulse Developer
committed
initial commit
2 parents eaa70a4 + 790d368 commit 2f970bc

4 files changed

Lines changed: 252 additions & 1 deletion

File tree

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

.gitignore

Lines changed: 184 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
<<<<<<< HEAD
12
# ==========================================
23
# Mesh Pulse - Project .gitignore
34
# Purpose: Maintain a clean repository by
@@ -15,10 +16,147 @@ __pycache__/
1516
venv/
1617
.venv/
1718
env/
19+
=======
20+
# Byte-compiled / optimized / DLL files
21+
__pycache__/
22+
*.py[cod]
23+
*$py.class
24+
25+
# C extensions
26+
*.so
27+
28+
# Distribution / packaging
29+
.Python
30+
build/
31+
develop-eggs/
32+
dist/
33+
downloads/
34+
eggs/
35+
.eggs/
36+
lib/
37+
lib64/
38+
parts/
39+
sdist/
40+
var/
41+
wheels/
42+
share/python-wheels/
43+
*.egg-info/
44+
.installed.cfg
45+
*.egg
46+
MANIFEST
47+
48+
# PyInstaller
49+
# Usually these files are written by a python script from a template
50+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
51+
*.manifest
52+
*.spec
53+
54+
# Installer logs
55+
pip-log.txt
56+
pip-delete-this-directory.txt
57+
58+
# Unit test / coverage reports
59+
htmlcov/
60+
.tox/
61+
.nox/
62+
.coverage
63+
.coverage.*
64+
.cache
65+
nosetests.xml
66+
coverage.xml
67+
*.cover
68+
*.py,cover
69+
.hypothesis/
70+
.pytest_cache/
71+
cover/
72+
73+
# Translations
74+
*.mo
75+
*.pot
76+
77+
# Django stuff:
78+
*.log
79+
local_settings.py
80+
db.sqlite3
81+
db.sqlite3-journal
82+
83+
# Flask stuff:
84+
instance/
85+
.webassets-cache
86+
87+
# Scrapy stuff:
88+
.scrapy
89+
90+
# Sphinx documentation
91+
docs/_build/
92+
93+
# PyBuilder
94+
.pybuilder/
95+
target/
96+
97+
# Jupyter Notebook
98+
.ipynb_checkpoints
99+
100+
# IPython
101+
profile_default/
102+
ipython_config.py
103+
104+
# pyenv
105+
# For a library or package, you might want to ignore these files since the code is
106+
# intended to run in multiple environments; otherwise, check them in:
107+
# .python-version
108+
109+
# pipenv
110+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
111+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
112+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
113+
# install all needed dependencies.
114+
#Pipfile.lock
115+
116+
# UV
117+
# Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
118+
# This is especially recommended for binary packages to ensure reproducibility, and is more
119+
# commonly ignored for libraries.
120+
#uv.lock
121+
122+
# poetry
123+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
124+
# This is especially recommended for binary packages to ensure reproducibility, and is more
125+
# commonly ignored for libraries.
126+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
127+
#poetry.lock
128+
129+
# pdm
130+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
131+
#pdm.lock
132+
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
133+
# in version control.
134+
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
135+
.pdm.toml
136+
.pdm-python
137+
.pdm-build/
138+
139+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
140+
__pypackages__/
141+
142+
# Celery stuff
143+
celerybeat-schedule
144+
celerybeat.pid
145+
146+
# SageMath parsed files
147+
*.sage.py
148+
149+
# Environments
150+
.env
151+
.venv
152+
env/
153+
venv/
154+
>>>>>>> 790d368ba1b0738aef239655ffa4ea2d35e8f40f
18155
ENV/
19156
env.bak/
20157
venv.bak/
21158

159+
<<<<<<< HEAD
22160
# --- IDE & Editor Settings ---
23161
# Visual Studio Code
24162
.vscode/
@@ -51,4 +189,49 @@ panel_output.txt
51189
htmlcov/
52190
nosetests.xml
53191
coverage.xml
54-
*.cover
192+
*.cover
193+
=======
194+
# Spyder project settings
195+
.spyderproject
196+
.spyproject
197+
198+
# Rope project settings
199+
.ropeproject
200+
201+
# mkdocs documentation
202+
/site
203+
204+
# mypy
205+
.mypy_cache/
206+
.dmypy.json
207+
dmypy.json
208+
209+
# Pyre type checker
210+
.pyre/
211+
212+
# pytype static type analyzer
213+
.pytype/
214+
215+
# Cython debug symbols
216+
cython_debug/
217+
218+
# PyCharm
219+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
220+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
221+
# and can be added to the global gitignore or merged into this file. For a more nuclear
222+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
223+
#.idea/
224+
225+
# Ruff stuff:
226+
.ruff_cache/
227+
228+
# PyPI configuration file
229+
.pypirc
230+
231+
# Cursor
232+
# Cursor is an AI-powered code editor.`.cursorignore` specifies files/directories to
233+
# exclude from AI features like autocomplete and code analysis. Recommended for sensitive data
234+
# refer to https://docs.cursor.com/context/ignore-files
235+
.cursorignore
236+
.cursorindexingignore
237+
>>>>>>> 790d368ba1b0738aef239655ffa4ea2d35e8f40f

LICENSE

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
MIT License
22

3+
<<<<<<< HEAD
34
Copyright (c) 2026 Mesh-Pulse Team
5+
=======
6+
Copyright (c) 2026 radikonreturn
7+
>>>>>>> 790d368ba1b0738aef239655ffa4ea2d35e8f40f
48

59
Permission is hereby granted, free of charge, to any person obtaining a copy
610
of this software and associated documentation files (the "Software"), to deal

README.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
<<<<<<< HEAD
12
# ⚡ Mesh-Pulse CLI
23

34
![Python application](https://github.com/USER_NAME/REPO_NAME/actions/workflows/python-app.yml/badge.svg)
@@ -57,3 +58,64 @@ mesh_pulse/
5758
## License
5859

5960
MIT
61+
=======
62+
# ⚡ Mesh-Pulse CLI
63+
64+
65+
66+
**A lightweight, TUI-based Network Mesh & System Resource Monitor.**
67+
68+
Mesh-Pulse turns your terminal into a Command Center for your local network — discover peers, monitor system health in real-time, and transfer files securely with AES-256 encryption.
69+
70+
## Features
71+
72+
- **P2P Discovery** — Automatic peer detection via UDP broadcast
73+
- **System Monitoring** — Live CPU, RAM, Disk I/O, and Network metrics
74+
- **Secure File Transfer** — AES-256-GCM encrypted TCP transfers with progress tracking
75+
- **TUI Dashboard** — Beautiful terminal UI with live-updating panels
76+
77+
## Quick Start
78+
79+
```bash
80+
# Install dependencies
81+
pip install -r requirements.txt
82+
83+
# Run the dashboard
84+
python -m mesh_pulse
85+
86+
# Or with options
87+
python -m mesh_pulse --broadcast-port 9999 --transfer-port 10000
88+
```
89+
90+
## Send a File
91+
92+
Press `S` in the dashboard, then enter the peer IP and file path. All transfers are encrypted with AES-256-GCM.
93+
94+
```bash
95+
# Set encryption key (or pass via --key)
96+
set MESH_PULSE_KEY=my-secret-key
97+
python -m mesh_pulse
98+
```
99+
100+
## Architecture
101+
102+
```
103+
mesh_pulse/
104+
├── core/ # P2P discovery, file transfer, system monitor
105+
├── tui/ # Textual dashboard and widgets
106+
└── utils/ # Crypto, config, logging
107+
```
108+
109+
## Keyboard Shortcuts
110+
111+
| Key | Action |
112+
|-----|--------|
113+
| `Q` | Quit |
114+
| `S` | Send file to a peer |
115+
| `R` | Force refresh metrics |
116+
| `T` | Toggle dark/light theme |
117+
118+
## License
119+
120+
MIT
121+
>>>>>>> 790d368ba1b0738aef239655ffa4ea2d35e8f40f

0 commit comments

Comments
 (0)