A powerful and interactive task manager built with Streamlit, offering real-time system monitoring, process management, and hardware insights in a sleek web-based UI.
- CPU usage – Total and per-core usage.
- Memory – RAM and swap utilization.
- Network – Traffic, interfaces, and active connections.
- View all running processes.
- Sort, search, and filter.
- Terminate selected processes.
- cutomised process sheduling algorithms,vizulaise also
- Hardware specifications.
- OS details and version.
- Network interface information.
- Current user sessions and logins.
- Tab-based navigation.
- Customizable refresh rate.
- Clean and responsive layout.
- Python 3.7+
pippackage manager
-
Clone the repository:
git clone https://github.com/lol782/task-manager-streamlit.git cd task-manager -
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the application:
streamlit run main.py
-
Open in browser:
http://localhost:8501
| View | Description |
|---|---|
| Dashboard | Overview of system performance and top processes |
| Processes | View, filter, and manage running processes with |
| customise process sheduling algorithm | |
| System Info | Detailed OS and hardware information |
| Network Stats | Live interface traffic and network connections |
Some features require elevated privileges:
- Linux/macOS: Use
sudofor full access to all processes. - Windows: Run as Administrator for complete process control.
Modify the UI appearance via:
assets/style.css
- Streamlit – UI framework
- pandas – Data wrangling
- matplotlib – Visualization (optional)
- plotly – Interactive charts (optional)
task_manager_sim/
│
├── main.py # Streamlit app entry point
├── requirements.txt
│
├── core/
│ ├── __init__.py
│ ├── process_manager.py # CRUD for processes
│ ├── scheduler.py # Scheduling algorithms
│ ├── resource_analyzer.py # CPU/Memory usage calculations
│ └── network.py # Network usage simulation or stats
│
├── data/
│ └── dummy_processes.json # Predefined dummy process set
│
├── ui/
│ ├── __init__.py
│ ├── dashboard.py # Gantt chart, memory, CPU, network
│ ├── process_table.py # Process list
│ └── control_panel.py # Add/start/stop process
│
└── utils/
├── __init__.py
├── visualizer.py # Gantt, memory, CPU, network graphs
└── helpers.py # ID generator, time, format utils
This project is licensed under the MIT License.
Contributions, bug reports, and feature requests are welcome. Feel free to fork the repo and submit a Pull Request!
Let me know if you'd like a version with badges (e.g., Python version, license, etc.) or markdown enhancements like collapsible sections.