Skip to content

Commit 4cfb765

Browse files
feat: ✨ more cards added
1 parent 549bbdf commit 4cfb765

18 files changed

Lines changed: 265 additions & 108 deletions

src/routes/__init__.py

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,8 @@
1-
from src.routes.cpu_usage import cpu_usage_bp
1+
from src.routes.cpu_info import cpu_info_bp
22
from src.routes.disk_usage import disk_usage_bp
33
from src.routes.homepage import homepage_bp
4-
from src.routes.memory_usage import memory_usage_bp
4+
from src.routes.memory_info import memory_info_bp
55
from src.routes.network_stats import network_stats_bp
66
from src.routes.settings import settings_bp
77
from src.routes.speedtest import speedtest_bp
88
from src.routes.system_health import system_health_bp
9-
10-
__all__ = [
11-
"cpu_usage_bp",
12-
"disk_usage_bp",
13-
"homepage_bp",
14-
"memory_usage_bp",
15-
"network_stats_bp",
16-
"settings_bp",
17-
"speedtest_bp",
18-
"system_health_bp",
19-
]

src/routes/cpu_info.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import psutil
2+
from flask import render_template, blueprints
3+
4+
from src.config import app
5+
from src.utils import get_cpu_core_count, get_cpu_frequency, cpu_usage_percent, get_cpu_temp
6+
7+
cpu_info_bp = blueprints.Blueprint("cpu_usage", __name__)
8+
9+
@app.route("/cpu_usage")
10+
def cpu_usage():
11+
current_temp, high_temp, critical_temp = get_cpu_temp()
12+
cpu_data = {
13+
"cpu_core": get_cpu_core_count(),
14+
"cpu_frequency": get_cpu_frequency(),
15+
"cpu_usage_percent": cpu_usage_percent(),
16+
"current_temp": current_temp,
17+
"high_temp": high_temp,
18+
"critical_temp": critical_temp,
19+
}
20+
return render_template("cpu_info.html", cpu_data=cpu_data)

src/routes/cpu_usage.py

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/routes/memory_info.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import psutil
2+
from flask import render_template, blueprints
3+
4+
from src.utils import swap_memory_info
5+
6+
from src.config import app
7+
8+
memory_info_bp = blueprints.Blueprint("memory_usage", __name__)
9+
10+
@app.route("/memory_usage")
11+
def memory_usage():
12+
total_swap, used_swap, free_swap = swap_memory_info()
13+
memory_info = {
14+
"memory_percent": psutil.virtual_memory().percent,
15+
"memory_available": round(
16+
psutil.virtual_memory().available / (1024**3), 2
17+
), # In GB
18+
"memory_used": round(psutil.virtual_memory().used / (1024**3), 2), # In GB,
19+
"total_swap": round(total_swap / (1024**3), 2), # In GB
20+
"used_swap": round(used_swap / (1024**3), 2), # In GB
21+
"free_swap": round(free_swap / (1024**3), 2), # In GB
22+
}
23+
return render_template("memory_info.html", memory_info=memory_info)

src/routes/memory_usage.py

Lines changed: 0 additions & 17 deletions
This file was deleted.

src/routes/network_stats.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,18 @@
22
from flask import render_template, blueprints
33

44
from src.config import app
5-
5+
from src.utils import get_established_connections
66
network_stats_bp = blueprints.Blueprint("network_stats", __name__)
77

88
@app.route("/network_stats")
99
def network_stats():
1010
net_io = psutil.net_io_counters()
11+
ipv4_ip, ipv6_ip = get_established_connections()
1112
network_info = {
1213
"network_sent": round(net_io.bytes_sent / (1024**2), 2), # In MB
1314
"network_received": round(net_io.bytes_recv / (1024**2), 2), # In MB
15+
"ipv4_ip": ipv4_ip,
16+
"ipv6_ip": ipv6_ip,
1417
}
1518
return render_template("network_stats.html", network_info=network_info)
1619

src/static/css/style.css

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/* Primary Colors */
22
:root {
3-
--color-primary: #007bff; /* Bright blue for primary elements */
3+
--color-primary: #7ea0c4; /* Bright blue for primary elements */
44
--color-secondary: #6c757d; /* Gray for secondary elements */
55
--color-success: #28a745; /* Green for success */
66
--color-danger: #dc3545; /* Red for danger */
@@ -12,15 +12,15 @@
1212
--color-black: #000000; /* Black for text */
1313

1414
/* card colors */
15-
--color-username: #469fff; /* Bright blue for username */
15+
--color-username: #28a745; /* Bright blue for username */
1616
--color-boot: #28a745; /* Green for boot time */
1717
--color-cpu: #ac0fea; /* Red for CPU */
1818
--color-cpu-usage: #ca11eb; /* Yellow for CPU usage */
19-
--color-memory: #ffbf00; /* Purple for memory */
20-
--color-disk: #047507; /* Gray for disk */
19+
--color-memory: #28a745; /* Purple for memory */
20+
--color-disk: #28a745; /* Gray for disk */
2121
--color-uptime: #f44336; /* Cyan for uptime */
22-
--color-network: #08a2a8; /* Bright blue for network */
23-
--color-speedtest: #f44336; /* Bright blue for speedtest */
22+
--color-network: #f44336; /* Bright blue for network */
23+
--color-speedtest: #08a2a8; /* Bright blue for speedtest */
2424
--color-battery: #007bff; /* Bright blue for battery */
2525
--color-connection: #f44336; /* Red for connection */
2626
--color-bg-dashboard-memory: #28a745; /* Green for memory card */

src/templates/cpu_info.html

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
{% extends 'base.html' %}
2+
3+
{% block title %}CPU Usage Details{% endblock %}
4+
5+
{% block content %}
6+
<h2 class="my-4">CPU Details</h2>
7+
<div class="container mt-4">
8+
<div class="row">
9+
<div class="col-md-6 col-lg-4 mb-4">
10+
<div class="card bg-cpu">
11+
<div class="card-body">
12+
<h5 class="card-title">CPU Cores <i class="fas fa-microchip"></i></h5>
13+
<p class="card-text fs-4">{{ cpu_data['cpu_core'] }}</p>
14+
<div class="cpu-core-visualization">
15+
{% for i in range(cpu_data['cpu_core']) %}
16+
<div class="cpu-core-bar"></div>
17+
{% endfor %}
18+
</div>
19+
</div>
20+
</div>
21+
</div>
22+
23+
<div class="col-md-6 col-lg-4 mb-4">
24+
<div class="card cpu-card bg-cpu" data-cpu-usage="{{ cpu_data['cpu_usage_percent'] }}%">
25+
<div class="card-body">
26+
<h5 class="card-title">CPU Usage <i class="fas fa-microchip"></i></h5>
27+
<p class="card-text fs-4">{{ cpu_data['cpu_usage_percent'] }}%</p>
28+
</div>
29+
</div>
30+
</div>
31+
32+
<div class="col-md-6 col-lg-4 mb-4">
33+
<div class="card cpu-card bg-cpu" data-cpu-frequency="{{ cpu_data['cpu_frequency'] }}">
34+
<div class="card-body">
35+
<h5 class="card-title">CPU Frequency <i class="fas fa-microchip"></i></h5>
36+
<p class="card-text fs-4">{{ cpu_data['cpu_frequency'] }}</p>
37+
</div>
38+
</div>
39+
</div>
40+
41+
<div class="col-md-6 col-lg-4 mb-4">
42+
<div class="card cpu-card bg-cpu" data-cpu-frequency="{{ cpu_data['cpu_frequency'] }}">
43+
<div class="card-body">
44+
<h5 class="card-title">CPU Current Temperature <i class="fas fa-microchip"></i></h5>
45+
<p class="card-text fs-4">{{ cpu_data['current_temp'] }}</p>
46+
</div>
47+
</div>
48+
</div>
49+
50+
<div class="col-md-6 col-lg-4 mb-4">
51+
<div class="card cpu-card bg-cpu" data-cpu-frequency="{{ cpu_data['cpu_frequency'] }}">
52+
<div class="card-body">
53+
<h5 class="card-title"> CPU High Temperature <i class="fas fa-microchip"></i></h5>
54+
<p class="card-text fs-4">{{ cpu_data['high_temp'] }}</p>
55+
</div>
56+
</div>
57+
</div>
58+
59+
<div class="col-md-6 col-lg-4 mb-4">
60+
<div class="card cpu-card bg-cpu" data-cpu-frequency="{{ cpu_data['cpu_frequency'] }}">
61+
<div class="card-body">
62+
<h5 class="card-title"> CPU Critical Temperature <i class="fas fa-microchip"></i></h5>
63+
<p class="card-text fs-4">{{ cpu_data['critical_temp'] }}</p>
64+
</div>
65+
</div>
66+
</div>
67+
68+
</div>
69+
</div>
70+
71+
72+
73+
{% endblock %}

src/templates/cpu_usage.html

Lines changed: 0 additions & 35 deletions
This file was deleted.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<div class="col-md-6 col-lg-4 mb-4">
2+
<div class="card cpu-card bg-cpu" data-cpu-usage="{{ system_info['cpu_percent'] }}%" shadow-sm border-0 rounded-3">
3+
<div class="card-body">
4+
<h5 class="card-title">CPU Temperature <i class="fas fa-microchip"></i></h5>
5+
<p class="card-text fs-4">{{ system_info['current_temp'] }}%</p>
6+
<a href="{{ url_for('cpu_usage') }}" class="btn btn-light">View Details</a>
7+
</div>
8+
</div>
9+
</div>

0 commit comments

Comments
 (0)