Personal control center with HUD panel, system monitoring, VPN control and network analysis
Project description
CoreFrame
Personal control center with HUD panel, system monitoring, universal VPN control, note manager, and network analysis.
Stack
- Backend: Python 3 (Flask + Flask-SocketIO)
- Frontend: HTML, CSS, vanilla JavaScript (no frameworks)
- WebSocket: Real-time for CPU, RAM, GPU, disk
- Extensions: Modular system with dynamic loading via importlib
Screenshot
HUD-style panel with real-time widgets, sidebar menu, sliding result panel, and persistent WebSocket connection.
Requirements
pip install -r requirements.txt
Usage
Run run.vbs (self-elevates with UAC for admin privileges).
Manual alternative:
python app.py
Open in browser: http://127.0.0.1:5000
Features
Network Monitor
- Public IP — widget with location and proxy/VPN detection
- Universal VPN — connect/disconnect Proton, Nord, Mullvad, Windscribe and more
- Modular architecture: each VPN is a separate provider in
providers/ - Automatic detection of active provider by services and adapters
- Killswitch via CLI (Proton) with availability detection
- Smart GUI restart: only relaunches client if it was already open
- Modular architecture: each VPN is a separate provider in
- DNS leak test — checks whether DNS queries travel through the VPN tunnel
- Active connections — table with proto, IPs, state and process (PID)
- Port scanning — common ports open on localhost
- Force DNS — sets Cloudflare 1.1.1.1 on the VPN adapter
System Monitor
- CPU, RAM, GPU, disk in real time
- Histograms with the last 40 values
- Broadcast via WebSocket every 1s
Vault Manager
- Note manager with JSON persistence
- Creation, listing, export
Security
- Bind to
127.0.0.1(not accessible from LAN/Internet) - CORS restricted to
http://127.0.0.1:5000 - SHA-256 token generated at startup, required on all APIs (
X-CoreFrame-Token)
Structure
coreframe/
├── app.py # Flask + SocketIO server
├── controller.ps1 # System tray icon + stop handling
├── run.vbs # Launcher with UAC self-elevation
├── requirements.txt
├── extensions.json
├── static/
│ ├── index.html # SPA
│ ├── css/ # palette, layout, components, effects
│ └── js/ # core.js, menu.js, widgets.js, utils.js
└── extensions/
├── network_monitor/
│ ├── main.py # Universal logic (IP, VPN, DNS, ports)
│ ├── extension.json
│ └── providers/ # VPN modules
│ ├── base.py # BaseProvider class
│ ├── proton.py
│ ├── windscribe.py
│ ├── nord.py
│ └── ... (13 providers)
├── system_monitor/
│ ├── main.py # CPU, RAM, GPU, disk
│ └── extension.json
└── vault_manager/
├── main.py # Notes with persistence
└── extension.json
Creating an extension
- Create folder in
extensions/my_extension/ - Create
extension.jsonwith widgets, menus and actions - Create
main.pywithExtensionclass and methods for each action - The core loads it automatically at startup
Adding a VPN provider
- Create
extensions/network_monitor/providers/my_vpn.py - Inherit from
BaseProviderand define attributes (keywords, services, processes, CLI) - Don't modify
main.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file coreframe_roftcore-1.0.0-py3-none-any.whl.
File metadata
- Download URL: coreframe_roftcore-1.0.0-py3-none-any.whl
- Upload date:
- Size: 48.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
447c4d1fc05ee4107b9c4e3787fd8d7eac4baeb995dafee9b3ca0b7de7b14710
|
|
| MD5 |
c69e7602800f98e81d86a14b6b98a6d4
|
|
| BLAKE2b-256 |
ed1cd67c16a1945c6da326a1141fdb9f23240e0849d9cfbddf00932f901c7a60
|