bday-cli 1.0.0__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.
- bday_cli-1.0.0/PKG-INFO +62 -0
- bday_cli-1.0.0/README.md +51 -0
- bday_cli-1.0.0/bday_cli/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/cli.py +196 -0
- bday_cli-1.0.0/bday_cli/config.py +4 -0
- bday_cli-1.0.0/bday_cli/core/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/core/engine.py +31 -0
- bday_cli-1.0.0/bday_cli/modes/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/modes/anime.py +11 -0
- bday_cli-1.0.0/bday_cli/modes/professional.py +11 -0
- bday_cli-1.0.0/bday_cli/modes/we9.py +11 -0
- bday_cli-1.0.0/bday_cli/modules/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/modules/cpu.py +4 -0
- bday_cli-1.0.0/bday_cli/modules/disk.py +4 -0
- bday_cli-1.0.0/bday_cli/modules/git_status.py +12 -0
- bday_cli-1.0.0/bday_cli/modules/memory.py +4 -0
- bday_cli-1.0.0/bday_cli/modules/uptime.py +6 -0
- bday_cli-1.0.0/bday_cli/personal_themes/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/personal_themes/abhay.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/anagha.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/archana.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/archit.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/arya.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/deeksha.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/krupa.py +32 -0
- bday_cli-1.0.0/bday_cli/personal_themes/lavanya.py +32 -0
- bday_cli-1.0.0/bday_cli/themes/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/themes/aot.py +37 -0
- bday_cli-1.0.0/bday_cli/themes/base.py +16 -0
- bday_cli-1.0.0/bday_cli/themes/demon.py +33 -0
- bday_cli-1.0.0/bday_cli/themes/vinland.py +34 -0
- bday_cli-1.0.0/bday_cli/utils/__init__.py +0 -0
- bday_cli-1.0.0/bday_cli/utils/display.py +165 -0
- bday_cli-1.0.0/bday_cli.egg-info/PKG-INFO +62 -0
- bday_cli-1.0.0/bday_cli.egg-info/SOURCES.txt +39 -0
- bday_cli-1.0.0/bday_cli.egg-info/dependency_links.txt +1 -0
- bday_cli-1.0.0/bday_cli.egg-info/entry_points.txt +2 -0
- bday_cli-1.0.0/bday_cli.egg-info/requires.txt +2 -0
- bday_cli-1.0.0/bday_cli.egg-info/top_level.txt +1 -0
- bday_cli-1.0.0/pyproject.toml +21 -0
- bday_cli-1.0.0/setup.cfg +4 -0
bday_cli-1.0.0/PKG-INFO
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: bday-cli
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: An anime-themed CLI system monitor
|
|
5
|
+
Author-email: Your Name <you@email.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Requires-Python: >=3.8
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
Requires-Dist: rich
|
|
10
|
+
Requires-Dist: psutil
|
|
11
|
+
|
|
12
|
+
# CLI_TOOL1
|
|
13
|
+
This is an anime themed CLI tool for Ashwith's Bday !!!!
|
|
14
|
+
|
|
15
|
+
So what we are making is a CLI tool which is anime based
|
|
16
|
+
It has functions like checking CPU/memory status etc
|
|
17
|
+
|
|
18
|
+
Current Anime Themes:
|
|
19
|
+
1)Attack On Titan
|
|
20
|
+
2)Demon Slayer
|
|
21
|
+
3)Fire Force
|
|
22
|
+
4)Vinland Saga
|
|
23
|
+
|
|
24
|
+
bday_cli/
|
|
25
|
+
│
|
|
26
|
+
├── main.py
|
|
27
|
+
├── config.py
|
|
28
|
+
├── modes/
|
|
29
|
+
│ ├── professional.py
|
|
30
|
+
│ └── anime.py
|
|
31
|
+
│
|
|
32
|
+
├── core/
|
|
33
|
+
│ └── engine.py
|
|
34
|
+
├── themes/
|
|
35
|
+
│ ├── base.py
|
|
36
|
+
│ ├── aot.py
|
|
37
|
+
│ ├── demon.py
|
|
38
|
+
│ ├── vinland.py
|
|
39
|
+
│
|
|
40
|
+
│
|
|
41
|
+
├── personal_themes/
|
|
42
|
+
│ ├── abhay.py
|
|
43
|
+
│ ├── anagha.py
|
|
44
|
+
│ ├── archana.py
|
|
45
|
+
│ ├── archit.py
|
|
46
|
+
│ ├── arya.py
|
|
47
|
+
│ ├── deeksha.py
|
|
48
|
+
│ ├── krupa.py
|
|
49
|
+
│ ├── lavanya.py
|
|
50
|
+
│
|
|
51
|
+
├── modules/
|
|
52
|
+
│ ├── cpu.py
|
|
53
|
+
│ ├── memory.py
|
|
54
|
+
│ ├── disk.py
|
|
55
|
+
│ ├── git_status.py
|
|
56
|
+
│ └── uptime.py
|
|
57
|
+
│
|
|
58
|
+
└── utils/
|
|
59
|
+
└── display.py
|
|
60
|
+
|
|
61
|
+
While adding a new theme
|
|
62
|
+
add folder -> copy paste code of an existing theme -> alter the display texts -> change the class name -> import that in cli.py -> add the name in praser and in the theme function
|
bday_cli-1.0.0/README.md
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# CLI_TOOL1
|
|
2
|
+
This is an anime themed CLI tool for Ashwith's Bday !!!!
|
|
3
|
+
|
|
4
|
+
So what we are making is a CLI tool which is anime based
|
|
5
|
+
It has functions like checking CPU/memory status etc
|
|
6
|
+
|
|
7
|
+
Current Anime Themes:
|
|
8
|
+
1)Attack On Titan
|
|
9
|
+
2)Demon Slayer
|
|
10
|
+
3)Fire Force
|
|
11
|
+
4)Vinland Saga
|
|
12
|
+
|
|
13
|
+
bday_cli/
|
|
14
|
+
│
|
|
15
|
+
├── main.py
|
|
16
|
+
├── config.py
|
|
17
|
+
├── modes/
|
|
18
|
+
│ ├── professional.py
|
|
19
|
+
│ └── anime.py
|
|
20
|
+
│
|
|
21
|
+
├── core/
|
|
22
|
+
│ └── engine.py
|
|
23
|
+
├── themes/
|
|
24
|
+
│ ├── base.py
|
|
25
|
+
│ ├── aot.py
|
|
26
|
+
│ ├── demon.py
|
|
27
|
+
│ ├── vinland.py
|
|
28
|
+
│
|
|
29
|
+
│
|
|
30
|
+
├── personal_themes/
|
|
31
|
+
│ ├── abhay.py
|
|
32
|
+
│ ├── anagha.py
|
|
33
|
+
│ ├── archana.py
|
|
34
|
+
│ ├── archit.py
|
|
35
|
+
│ ├── arya.py
|
|
36
|
+
│ ├── deeksha.py
|
|
37
|
+
│ ├── krupa.py
|
|
38
|
+
│ ├── lavanya.py
|
|
39
|
+
│
|
|
40
|
+
├── modules/
|
|
41
|
+
│ ├── cpu.py
|
|
42
|
+
│ ├── memory.py
|
|
43
|
+
│ ├── disk.py
|
|
44
|
+
│ ├── git_status.py
|
|
45
|
+
│ └── uptime.py
|
|
46
|
+
│
|
|
47
|
+
└── utils/
|
|
48
|
+
└── display.py
|
|
49
|
+
|
|
50
|
+
While adding a new theme
|
|
51
|
+
add folder -> copy paste code of an existing theme -> alter the display texts -> change the class name -> import that in cli.py -> add the name in praser and in the theme function
|
|
File without changes
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import argparse
|
|
2
|
+
import json
|
|
3
|
+
import os
|
|
4
|
+
|
|
5
|
+
from rich.console import Console
|
|
6
|
+
from bday_cli.core.engine import Engine
|
|
7
|
+
from bday_cli.themes.aot import AOTTheme
|
|
8
|
+
from bday_cli.themes.demon import DemonTheme
|
|
9
|
+
from bday_cli.themes.vinland import VinlandSaga
|
|
10
|
+
from bday_cli.personal_themes.abhay import Abhay
|
|
11
|
+
from bday_cli.personal_themes.archana import Archana
|
|
12
|
+
from bday_cli.personal_themes.anagha import Anagha
|
|
13
|
+
from bday_cli.personal_themes.arya import Arya
|
|
14
|
+
from bday_cli.personal_themes.deeksha import Deeksha
|
|
15
|
+
from bday_cli.personal_themes.krupa import Krupa
|
|
16
|
+
from bday_cli.personal_themes.lavanya import Lavanya
|
|
17
|
+
from bday_cli.personal_themes.archit import Archit
|
|
18
|
+
from bday_cli.modes import professional, anime, we9
|
|
19
|
+
import bday_cli.utils.display as display
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
CONFIG_PATH = os.path.expanduser("~/.bday_config.json")
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# ---------------------------
|
|
26
|
+
# Config Handling
|
|
27
|
+
# ---------------------------
|
|
28
|
+
|
|
29
|
+
def load_config():
|
|
30
|
+
if os.path.exists(CONFIG_PATH):
|
|
31
|
+
try:
|
|
32
|
+
with open(CONFIG_PATH, "r") as f:
|
|
33
|
+
return json.load(f)
|
|
34
|
+
except Exception:
|
|
35
|
+
pass
|
|
36
|
+
return None # Signal that setup is needed
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def save_config(mode, theme):
|
|
40
|
+
with open(CONFIG_PATH, "w") as f:
|
|
41
|
+
json.dump({"mode": mode, "theme": theme}, f)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def run_setup():
|
|
45
|
+
from rich.prompt import Prompt
|
|
46
|
+
from rich.panel import Panel
|
|
47
|
+
|
|
48
|
+
console = Console()
|
|
49
|
+
console.print(Panel("Welcome to bday CLI\nLet's get you set up.", title="⚔ SETUP"))
|
|
50
|
+
|
|
51
|
+
mode = Prompt.ask(
|
|
52
|
+
"Choose your mode",
|
|
53
|
+
choices=["anime", "professional","we9"],
|
|
54
|
+
default="anime"
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
if(mode=="anime"):
|
|
58
|
+
theme = Prompt.ask(
|
|
59
|
+
"\nChoose your theme",
|
|
60
|
+
choices=["aot", "demon", "vinland", "archit"],
|
|
61
|
+
default="aot"
|
|
62
|
+
)
|
|
63
|
+
elif (mode == "we9"):
|
|
64
|
+
theme = Prompt.ask(
|
|
65
|
+
"\nChoose your theme",
|
|
66
|
+
choices=["abhay", "anagha","archana","archit","arya","deeksha","krupa","lavanya"],
|
|
67
|
+
default="archit"
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
save_config(mode, theme)
|
|
71
|
+
display.show_banner(theme, mode)
|
|
72
|
+
console.print("\n[green]Setup complete! Run `bday --pcinfo` to get started.[/green]")
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
# ---------------------------
|
|
76
|
+
# Theme Factory
|
|
77
|
+
# ---------------------------
|
|
78
|
+
|
|
79
|
+
def get_theme(theme_name):
|
|
80
|
+
themes = {
|
|
81
|
+
"aot": AOTTheme,
|
|
82
|
+
"demon": DemonTheme,
|
|
83
|
+
"vinland":VinlandSaga,
|
|
84
|
+
"abhay":Abhay,
|
|
85
|
+
"anagha":Anagha,
|
|
86
|
+
"archana":Archana,
|
|
87
|
+
"archit":Archit,
|
|
88
|
+
"arya":Arya,
|
|
89
|
+
"deeksha":Deeksha,
|
|
90
|
+
"krupa":Krupa,
|
|
91
|
+
"lavanya":Lavanya,
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
theme_class = themes.get(theme_name)
|
|
95
|
+
if theme_class:
|
|
96
|
+
return theme_class()
|
|
97
|
+
|
|
98
|
+
# Fallback safety
|
|
99
|
+
return AOTTheme()
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
# ---------------------------
|
|
103
|
+
# Main CLI Logic
|
|
104
|
+
# ---------------------------
|
|
105
|
+
|
|
106
|
+
def main():
|
|
107
|
+
config_data = load_config()
|
|
108
|
+
|
|
109
|
+
if config_data is None:
|
|
110
|
+
run_setup()
|
|
111
|
+
config_data = load_config() # Reload after setup
|
|
112
|
+
return
|
|
113
|
+
|
|
114
|
+
parser = argparse.ArgumentParser()
|
|
115
|
+
parser.add_argument("--setup", action="store_true")
|
|
116
|
+
parser.add_argument("--mode", choices=["professional", "anime","we9"])
|
|
117
|
+
|
|
118
|
+
# Build choices based on current mode
|
|
119
|
+
if config_data and config_data["mode"] == "anime":
|
|
120
|
+
theme_choices = ["aot", "demon", "vinland", "archit"]
|
|
121
|
+
elif config_data and config_data["mode"] == "we9":
|
|
122
|
+
theme_choices = ["abhay", "anagha", "archana", "archit", "arya", "ashwith", "deeksha", "krupa", "lavanya"]
|
|
123
|
+
else:
|
|
124
|
+
theme_choices = ["aot", "demon", "vinland", "archit",
|
|
125
|
+
"abhay", "anagha", "archana", "arya",
|
|
126
|
+
"ashwith", "deeksha", "krupa", "lavanya"]
|
|
127
|
+
parser.add_argument("--theme", choices=theme_choices)
|
|
128
|
+
parser.add_argument("--watch", action="store_true")
|
|
129
|
+
parser.add_argument("--pcinfo", action="store_true")
|
|
130
|
+
parser.add_argument("--quote", action="store_true")
|
|
131
|
+
|
|
132
|
+
# Hidden birthday flag
|
|
133
|
+
parser.add_argument("--birthday", action="store_true", help=argparse.SUPPRESS)
|
|
134
|
+
|
|
135
|
+
args = parser.parse_args()
|
|
136
|
+
|
|
137
|
+
# ---------------------------
|
|
138
|
+
# 1️⃣ Birthday Override
|
|
139
|
+
# ---------------------------
|
|
140
|
+
if args.birthday:
|
|
141
|
+
display.show_birthday()
|
|
142
|
+
return
|
|
143
|
+
|
|
144
|
+
# ---------------------------
|
|
145
|
+
# 2️⃣ Config Change (Theme / Mode)
|
|
146
|
+
# ---------------------------
|
|
147
|
+
if args.setup:
|
|
148
|
+
run_setup()
|
|
149
|
+
return
|
|
150
|
+
|
|
151
|
+
if args.mode or args.theme:
|
|
152
|
+
new_mode = args.mode if args.mode else config_data["mode"]
|
|
153
|
+
new_theme = args.theme if args.theme else config_data["theme"]
|
|
154
|
+
|
|
155
|
+
save_config(new_mode, new_theme)
|
|
156
|
+
|
|
157
|
+
display.show_banner(new_theme,new_mode)
|
|
158
|
+
return
|
|
159
|
+
|
|
160
|
+
# ---------------------------
|
|
161
|
+
# 3️⃣ Quote Command
|
|
162
|
+
# ---------------------------
|
|
163
|
+
if args.quote:
|
|
164
|
+
theme = get_theme(config_data["theme"])
|
|
165
|
+
display.show_quote(theme.random_quote())
|
|
166
|
+
return
|
|
167
|
+
|
|
168
|
+
# ---------------------------
|
|
169
|
+
# 4️⃣ PC Info Command
|
|
170
|
+
# ---------------------------
|
|
171
|
+
if args.pcinfo:
|
|
172
|
+
engine = Engine()
|
|
173
|
+
|
|
174
|
+
theme = get_theme(config_data["theme"])
|
|
175
|
+
mode_name = config_data["mode"]
|
|
176
|
+
|
|
177
|
+
if mode_name == "professional":
|
|
178
|
+
professional.run(engine, theme, display, watch=args.watch)
|
|
179
|
+
else:
|
|
180
|
+
anime.run(engine, theme, display, watch=args.watch)
|
|
181
|
+
|
|
182
|
+
return
|
|
183
|
+
|
|
184
|
+
# ---------------------------
|
|
185
|
+
# 5️⃣ Default Behavior
|
|
186
|
+
# ---------------------------
|
|
187
|
+
# If no arguments provided → show help
|
|
188
|
+
parser.print_help()
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
# ---------------------------
|
|
192
|
+
# Entry Point
|
|
193
|
+
# ---------------------------
|
|
194
|
+
|
|
195
|
+
if __name__ == "__main__":
|
|
196
|
+
main()
|
|
File without changes
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import bday_cli.modules.cpu as cpu
|
|
2
|
+
import bday_cli.modules.memory as memory
|
|
3
|
+
import bday_cli.modules.disk as disk
|
|
4
|
+
import bday_cli.modules.git_status as git_status
|
|
5
|
+
import bday_cli.modules.uptime as uptime
|
|
6
|
+
|
|
7
|
+
class Engine:
|
|
8
|
+
|
|
9
|
+
def collect(self):
|
|
10
|
+
return {
|
|
11
|
+
"cpu": cpu.get_cpu(),
|
|
12
|
+
"memory": memory.get_memory(),
|
|
13
|
+
"disk": disk.get_disk(),
|
|
14
|
+
"git": git_status.get_git_status(),
|
|
15
|
+
"uptime": uptime.get_uptime()
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
def process(self, theme, intensity):
|
|
19
|
+
data = self.collect()
|
|
20
|
+
|
|
21
|
+
messages = {
|
|
22
|
+
"cpu_msg": theme.cpu_message(data["cpu"], intensity),
|
|
23
|
+
"mem_msg": theme.memory_message(data["memory"], intensity),
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
if data["git"]:
|
|
27
|
+
messages["git_msg"] = theme.git_message(
|
|
28
|
+
data["git"]["dirty"], intensity
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
return data, messages
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Abhay(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Anagha(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Archana(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Archit(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion nigga"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Arya(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Deeksha(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Krupa(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from ..themes.base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class Lavanya(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Muh diya toh kuch bhi bolega",
|
|
7
|
+
"AAAP yaha aajaye",
|
|
8
|
+
"PC hai toh kuch bhi karega",
|
|
9
|
+
"Accha londe"
|
|
10
|
+
|
|
11
|
+
]
|
|
12
|
+
def cpu_message(self, cpu, intensity):
|
|
13
|
+
if intensity == "low":
|
|
14
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
15
|
+
|
|
16
|
+
if cpu > 90:
|
|
17
|
+
return "PC band mado ley!!"
|
|
18
|
+
elif cpu > 70:
|
|
19
|
+
return ""
|
|
20
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
21
|
+
|
|
22
|
+
def memory_message(self, memory, intensity):
|
|
23
|
+
if intensity == "low":
|
|
24
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
25
|
+
|
|
26
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
27
|
+
|
|
28
|
+
def git_message(self, dirty, intensity):
|
|
29
|
+
if intensity == "low":
|
|
30
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
31
|
+
|
|
32
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
File without changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
from .base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class AOTTheme(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"If you don’t fight, you can’t win.",
|
|
7
|
+
"The world is cruel, but also beautiful.",
|
|
8
|
+
"What a Beautiful Day It Is",
|
|
9
|
+
"Those Who Can’t Abandon Anything Can’t Change Anything",
|
|
10
|
+
"On the Other Side of the Ocean",
|
|
11
|
+
"There is no truth in this world. Anyone can become a God or a Devil",
|
|
12
|
+
"He is already great. Because he was born into this world",
|
|
13
|
+
"On the other side of the sea..is freedom",
|
|
14
|
+
"What are you doing? Stand up, dad. Did you forget what you came here to do?"
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
def cpu_message(self, cpu, intensity):
|
|
18
|
+
if intensity == "low":
|
|
19
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
20
|
+
|
|
21
|
+
if cpu > 90:
|
|
22
|
+
return " Titans have broken wall Maria!!!"
|
|
23
|
+
elif cpu > 70:
|
|
24
|
+
return "The CPU rumbling has begun!!!!"
|
|
25
|
+
return " The CPU walls stand strong."
|
|
26
|
+
|
|
27
|
+
def memory_message(self, memory, intensity):
|
|
28
|
+
if intensity == "low":
|
|
29
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
30
|
+
|
|
31
|
+
return "King Firtz might erase memory !!" if memory > 80 else "Eren regained Memory"
|
|
32
|
+
|
|
33
|
+
def git_message(self, dirty, intensity):
|
|
34
|
+
if intensity == "low":
|
|
35
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
36
|
+
|
|
37
|
+
return " Levi says not clean enough!!" if dirty else " Levi approves your cleanliness."
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import random
|
|
2
|
+
|
|
3
|
+
class BaseTheme:
|
|
4
|
+
def cpu_message(self, cpu: float, intensity: str) -> str:
|
|
5
|
+
raise NotImplementedError
|
|
6
|
+
|
|
7
|
+
def memory_message(self, memory: float, intensity: str) -> str:
|
|
8
|
+
raise NotImplementedError
|
|
9
|
+
|
|
10
|
+
def git_message(self, dirty: bool, intensity: str) -> str:
|
|
11
|
+
raise NotImplementedError
|
|
12
|
+
|
|
13
|
+
def random_quote(self):
|
|
14
|
+
if hasattr(self, "quotes"):
|
|
15
|
+
return random.choice(self.quotes)
|
|
16
|
+
return "No quote available."
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
from .base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class DemonTheme(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"Set your heart ablaze ",
|
|
7
|
+
"Having such a simple mind that you call this simple, I envy you",
|
|
8
|
+
"Life is a series of decisions. You never have unlimited options or unlimited time to think, but what you choose in that instant defines who you are",
|
|
9
|
+
"Train until it kills you. Because really, when you get down to it, there's nothing else you can do",
|
|
10
|
+
"All that lives must die. Only feelings are eternal and undying",
|
|
11
|
+
"Even the strongest attcks are pointless if they dont hit"
|
|
12
|
+
]
|
|
13
|
+
def cpu_message(self, cpu, intensity):
|
|
14
|
+
if intensity == "low":
|
|
15
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
16
|
+
|
|
17
|
+
if cpu > 90:
|
|
18
|
+
return "Hinokami Kagura! You're pushing past your CPU limits"
|
|
19
|
+
elif cpu > 70:
|
|
20
|
+
return " Total Concentration: CPU You are in a flow state"
|
|
21
|
+
return " CPU Resting at the Butterfly Mansion"
|
|
22
|
+
|
|
23
|
+
def memory_message(self, memory, intensity):
|
|
24
|
+
if intensity == "low":
|
|
25
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
26
|
+
|
|
27
|
+
return " Final Selection. Your RAM is packed with demons" if memory > 80 else "Memory might be infinite castle"
|
|
28
|
+
|
|
29
|
+
def git_message(self, dirty, intensity):
|
|
30
|
+
if intensity == "low":
|
|
31
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
32
|
+
|
|
33
|
+
return " Repo turning to Infinite castle not clean" if dirty else "Water Breathing 6th form Calm sea repo clean"
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from .base import BaseTheme
|
|
2
|
+
|
|
3
|
+
class VinlandSaga(BaseTheme):
|
|
4
|
+
|
|
5
|
+
quotes = [
|
|
6
|
+
"I have no enemies ",
|
|
7
|
+
"I want to be a kinder, gentler person. I want to be... a stronger person",
|
|
8
|
+
"Where is your sword...Dont need it",
|
|
9
|
+
"A true warrior dosent need a sword",
|
|
10
|
+
"There is no meaning to dying for someone else... But there's meaning in dying together with someone",
|
|
11
|
+
"You're young. Time is on your side. You'll grow up and I'll grow old. Someday you'll likely beat me. It's only natural. Even the strongest man must die",
|
|
12
|
+
"To be free is to own your choices, however hard the road may be"
|
|
13
|
+
]
|
|
14
|
+
def cpu_message(self, cpu, intensity):
|
|
15
|
+
if intensity == "low":
|
|
16
|
+
return "System stable." if cpu < 70 else "High CPU usage."
|
|
17
|
+
|
|
18
|
+
if cpu > 90:
|
|
19
|
+
return "Thats THORKELL on the bridge destroying the CPU"
|
|
20
|
+
elif cpu > 70:
|
|
21
|
+
return "Dual dagger weilding CPU"
|
|
22
|
+
return "Far across the sea....lies a place....Vinland"
|
|
23
|
+
|
|
24
|
+
def memory_message(self, memory, intensity):
|
|
25
|
+
if intensity == "low":
|
|
26
|
+
return "Memory usage normal." if memory < 80 else "Memory usage high."
|
|
27
|
+
|
|
28
|
+
return "The memories of your murder is pulling you down" if memory > 80 else "Quick on your toes huh...see still got will to live?"
|
|
29
|
+
|
|
30
|
+
def git_message(self, dirty, intensity):
|
|
31
|
+
if intensity == "low":
|
|
32
|
+
return "Repo clean." if not dirty else "Uncommitted changes."
|
|
33
|
+
|
|
34
|
+
return "You need to move forward with the things you have done" if dirty else "Now that you are truly empty you can we can fill that up with something"
|
|
File without changes
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
from rich.console import Console
|
|
2
|
+
from rich.table import Table
|
|
3
|
+
from rich.panel import Panel
|
|
4
|
+
import random
|
|
5
|
+
import time
|
|
6
|
+
|
|
7
|
+
console = Console()
|
|
8
|
+
|
|
9
|
+
def render_professional(data, messages):
|
|
10
|
+
table = Table(title="System Overview")
|
|
11
|
+
|
|
12
|
+
table.add_column("Metric")
|
|
13
|
+
table.add_column("Value")
|
|
14
|
+
|
|
15
|
+
table.add_row("CPU", f"{data['cpu']}%")
|
|
16
|
+
table.add_row("Memory", f"{data['memory']}%")
|
|
17
|
+
table.add_row("Disk", f"{data['disk']}%")
|
|
18
|
+
table.add_row("Uptime (s)", str(data["uptime"]))
|
|
19
|
+
|
|
20
|
+
console.print(table)
|
|
21
|
+
|
|
22
|
+
if "git_msg" in messages:
|
|
23
|
+
console.print(messages["git_msg"])
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def render_anime(data, messages):
|
|
27
|
+
text = f"""
|
|
28
|
+
CPU: {data['cpu']}%
|
|
29
|
+
Memory: {data['memory']}%
|
|
30
|
+
Disk: {data['disk']}%
|
|
31
|
+
Uptime: {data['uptime']} sec
|
|
32
|
+
|
|
33
|
+
{messages['cpu_msg']}
|
|
34
|
+
{messages['mem_msg']}
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
if "git_msg" in messages:
|
|
38
|
+
text += f"\n{messages['git_msg']}"
|
|
39
|
+
|
|
40
|
+
console.print(Panel(text, title="⚔ Titan Mode"))
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def show_banner(theme, mode):
|
|
45
|
+
import os
|
|
46
|
+
import time
|
|
47
|
+
os.system("cls" if os.name == "nt" else "clear")
|
|
48
|
+
time.sleep(0.1)
|
|
49
|
+
|
|
50
|
+
if mode == "anime":
|
|
51
|
+
if theme == "aot":
|
|
52
|
+
art = r"""
|
|
53
|
+
████████╗██╗████████╗ █████╗ ███╗ ██╗
|
|
54
|
+
╚══██╔══╝██║╚══██╔══╝██╔══██╗████╗ ██║
|
|
55
|
+
██║ ██║ ██║ ███████║██╔██╗ ██║
|
|
56
|
+
██║ ██║ ██║ ██╔══██║██║╚██╗██║
|
|
57
|
+
██║ ██║ ██║ ██║ ██║██║ ╚████║
|
|
58
|
+
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═══╝
|
|
59
|
+
|
|
60
|
+
TITAN MODE ACTIVATED"""
|
|
61
|
+
|
|
62
|
+
elif theme == "demon":
|
|
63
|
+
art = r"""██████╗ ███████╗███╗ ███╗ ██████╗ ███╗ ██╗ ███████╗██╗ █████╗ ██╗ ██╗███████╗██████╗
|
|
64
|
+
██╔══██╗██╔════╝████╗ ████║██╔═══██╗████╗ ██║ ██╔════╝██║ ██╔══██╗╚██╗ ██╔╝██╔════╝██╔══██╗
|
|
65
|
+
██║ ██║█████╗ ██╔████╔██║██║ ██║██╔██╗ ██║ ███████╗██║ ███████║ ╚████╔╝ █████╗ ██████╔╝
|
|
66
|
+
██║ ██║██╔══╝ ██║╚██╔╝██║██║ ██║██║╚██╗██║ ╚════██║██║ ██╔══██║ ╚██╔╝ ██╔══╝ ██╔══██╗
|
|
67
|
+
██████╔╝███████╗██║ ╚═╝ ██║╚██████╔╝██║ ╚████║ ███████║███████╗██║ ██║ ██║ ███████╗██║ ██║
|
|
68
|
+
╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═╝
|
|
69
|
+
|
|
70
|
+
DEMON SLAYER MODE ENGAGED"""
|
|
71
|
+
|
|
72
|
+
elif theme == "vinland":
|
|
73
|
+
art = r"""██╗ ██╗██╗███╗ ██╗██╗ █████╗ ███╗ ██╗██████╗ ███████╗ █████╗ ██████╗ █████╗
|
|
74
|
+
██║ ██║██║████╗ ██║██║ ██╔══██╗████╗ ██║██╔══██╗ ██╔════╝██╔══██╗██╔════╝ ██╔══██╗
|
|
75
|
+
██║ ██║██║██╔██╗ ██║██║ ███████║██╔██╗ ██║██║ ██║ ███████╗███████║██║ ███╗███████║
|
|
76
|
+
╚██╗ ██╔╝██║██║╚██╗██║██║ ██╔══██║██║╚██╗██║██║ ██║ ╚════██║██╔══██║██║ ██║██╔══██║
|
|
77
|
+
╚████╔╝ ██║██║ ╚████║███████╗██║ ██║██║ ╚████║██████╔╝ ███████║██║ ██║╚██████╔╝██║ ██║
|
|
78
|
+
╚═══╝ ╚═╝╚═╝ ╚═══╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═══╝╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
|
|
79
|
+
|
|
80
|
+
VINLAND SAGA MODE ENGAGED"""
|
|
81
|
+
|
|
82
|
+
else:
|
|
83
|
+
art = "ANIME MODE ENGAGED"
|
|
84
|
+
|
|
85
|
+
console.print(Panel(art, title="⚔ THEME UPDATED")) # ← single print for all anime themes
|
|
86
|
+
|
|
87
|
+
elif mode == "we9":
|
|
88
|
+
if theme == "archit":
|
|
89
|
+
art = r""" ___ .______ ______ __ __ __ .___________.
|
|
90
|
+
/ \ | _ \ / || | | | | | | |
|
|
91
|
+
/ ^ \ | |_) | | ,----'| |__| | | | `---| |----`
|
|
92
|
+
/ /_\ \ | / | | | __ | | | | |
|
|
93
|
+
/ _____ \ | |\ \----.| `----.| | | | | | | |
|
|
94
|
+
/__/ \__\ | _| `._____| \______||__| |__| |__| |__|
|
|
95
|
+
|
|
96
|
+
ARCHIT MODE ENGAGED"""
|
|
97
|
+
|
|
98
|
+
elif theme == "arya":
|
|
99
|
+
art = r"""ARYA MODE ENGAGED""" # ← replace with real art
|
|
100
|
+
|
|
101
|
+
elif theme == "archana":
|
|
102
|
+
art = r"""ARCHANA MODE ENGAGED"""
|
|
103
|
+
|
|
104
|
+
elif theme == "abhay":
|
|
105
|
+
art = r"""ABHAY MODE ENGAGED"""
|
|
106
|
+
|
|
107
|
+
elif theme == "anagha":
|
|
108
|
+
art = r"""ANAGHA MODE ENGAGED"""
|
|
109
|
+
|
|
110
|
+
elif theme == "deeksha":
|
|
111
|
+
art = r"""DEEKSHA MODE ENGAGED"""
|
|
112
|
+
|
|
113
|
+
elif theme == "krupa":
|
|
114
|
+
art = r"""KRUPA MODE ENGAGED"""
|
|
115
|
+
|
|
116
|
+
elif theme == "lavanya":
|
|
117
|
+
art = r"""LAVANYA MODE ENGAGED"""
|
|
118
|
+
|
|
119
|
+
else:
|
|
120
|
+
art = "WE9 MODE ENGAGED"
|
|
121
|
+
|
|
122
|
+
console.print(Panel(art, title="👥 WE9 THEME UPDATED")) # ← single print for all we9 themes
|
|
123
|
+
|
|
124
|
+
else:
|
|
125
|
+
console.print(Panel("THEME UPDATED", title="THEME UPDATED"))
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
def show_birthday():
|
|
130
|
+
confetti = ["✨", "🎉", "🎊", "🔥", "⚔"]
|
|
131
|
+
|
|
132
|
+
for _ in range(3):
|
|
133
|
+
line = " ".join(random.choice(confetti) for _ in range(20))
|
|
134
|
+
console.print(line)
|
|
135
|
+
time.sleep(0.2)
|
|
136
|
+
|
|
137
|
+
art = r"""
|
|
138
|
+
██╗ ██╗ █████╗ ██████╗ ███████╗
|
|
139
|
+
██║ ██║██╔══██╗██╔══██╗██╔════╝
|
|
140
|
+
██║ ██║███████║██║ ██║█████╗
|
|
141
|
+
╚██╗ ██╔╝██╔══██║██║ ██║██╔══╝
|
|
142
|
+
╚████╔╝ ██║ ██║██████╔╝███████╗
|
|
143
|
+
╚═══╝ ╚═╝ ╚═╝╚═════╝ ╚══════╝
|
|
144
|
+
|
|
145
|
+
██╗ ██╗ █████╗ ██████╗ ██████╗ ██╗ ██╗ ██████╗ ██╗██████╗ ████████╗██╗ ██╗██████╗ █████╗ ██╗ ██╗
|
|
146
|
+
██║ ██║██╔══██╗██╔══██╗██╔══██╗╚██╗ ██╔╝ ██╔══██╗██║██╔══██╗╚══██╔══╝██║ ██║██╔══██╗██╔══██╗╚██╗ ██╔╝
|
|
147
|
+
███████║███████║██████╔╝██████╔╝ ╚████╔╝ ██████╔╝██║██████╔╝ ██║ ███████║██║ ██║███████║ ╚████╔╝
|
|
148
|
+
██╔══██║██╔══██║██╔═══╝ ██╔═══╝ ╚██╔╝ ██╔══██╗██║██╔══██╗ ██║ ██╔══██║██║ ██║██╔══██║ ╚██╔╝
|
|
149
|
+
██║ ██║██║ ██║██║ ██║ ██║ ██████╔╝██║██║ ██║ ██║ ██║ ██║██████╔╝██║ ██║ ██║
|
|
150
|
+
╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝ ╚═╝
|
|
151
|
+
|
|
152
|
+
"""
|
|
153
|
+
|
|
154
|
+
console.print(Panel(art, title="🎂 SYSTEM OVERRIDE 🎂"))
|
|
155
|
+
console.print("\nThe system bends to your will today.\n")
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
def show_quote(quote):
|
|
159
|
+
console.print(
|
|
160
|
+
Panel(
|
|
161
|
+
quote,
|
|
162
|
+
title="⚔ Anime Quote",
|
|
163
|
+
border_style="bright_magenta"
|
|
164
|
+
)
|
|
165
|
+
)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: bday-cli
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: An anime-themed CLI system monitor
|
|
5
|
+
Author-email: Your Name <you@email.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Requires-Python: >=3.8
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
Requires-Dist: rich
|
|
10
|
+
Requires-Dist: psutil
|
|
11
|
+
|
|
12
|
+
# CLI_TOOL1
|
|
13
|
+
This is an anime themed CLI tool for Ashwith's Bday !!!!
|
|
14
|
+
|
|
15
|
+
So what we are making is a CLI tool which is anime based
|
|
16
|
+
It has functions like checking CPU/memory status etc
|
|
17
|
+
|
|
18
|
+
Current Anime Themes:
|
|
19
|
+
1)Attack On Titan
|
|
20
|
+
2)Demon Slayer
|
|
21
|
+
3)Fire Force
|
|
22
|
+
4)Vinland Saga
|
|
23
|
+
|
|
24
|
+
bday_cli/
|
|
25
|
+
│
|
|
26
|
+
├── main.py
|
|
27
|
+
├── config.py
|
|
28
|
+
├── modes/
|
|
29
|
+
│ ├── professional.py
|
|
30
|
+
│ └── anime.py
|
|
31
|
+
│
|
|
32
|
+
├── core/
|
|
33
|
+
│ └── engine.py
|
|
34
|
+
├── themes/
|
|
35
|
+
│ ├── base.py
|
|
36
|
+
│ ├── aot.py
|
|
37
|
+
│ ├── demon.py
|
|
38
|
+
│ ├── vinland.py
|
|
39
|
+
│
|
|
40
|
+
│
|
|
41
|
+
├── personal_themes/
|
|
42
|
+
│ ├── abhay.py
|
|
43
|
+
│ ├── anagha.py
|
|
44
|
+
│ ├── archana.py
|
|
45
|
+
│ ├── archit.py
|
|
46
|
+
│ ├── arya.py
|
|
47
|
+
│ ├── deeksha.py
|
|
48
|
+
│ ├── krupa.py
|
|
49
|
+
│ ├── lavanya.py
|
|
50
|
+
│
|
|
51
|
+
├── modules/
|
|
52
|
+
│ ├── cpu.py
|
|
53
|
+
│ ├── memory.py
|
|
54
|
+
│ ├── disk.py
|
|
55
|
+
│ ├── git_status.py
|
|
56
|
+
│ └── uptime.py
|
|
57
|
+
│
|
|
58
|
+
└── utils/
|
|
59
|
+
└── display.py
|
|
60
|
+
|
|
61
|
+
While adding a new theme
|
|
62
|
+
add folder -> copy paste code of an existing theme -> alter the display texts -> change the class name -> import that in cli.py -> add the name in praser and in the theme function
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
pyproject.toml
|
|
3
|
+
bday_cli/__init__.py
|
|
4
|
+
bday_cli/cli.py
|
|
5
|
+
bday_cli/config.py
|
|
6
|
+
bday_cli.egg-info/PKG-INFO
|
|
7
|
+
bday_cli.egg-info/SOURCES.txt
|
|
8
|
+
bday_cli.egg-info/dependency_links.txt
|
|
9
|
+
bday_cli.egg-info/entry_points.txt
|
|
10
|
+
bday_cli.egg-info/requires.txt
|
|
11
|
+
bday_cli.egg-info/top_level.txt
|
|
12
|
+
bday_cli/core/__init__.py
|
|
13
|
+
bday_cli/core/engine.py
|
|
14
|
+
bday_cli/modes/__init__.py
|
|
15
|
+
bday_cli/modes/anime.py
|
|
16
|
+
bday_cli/modes/professional.py
|
|
17
|
+
bday_cli/modes/we9.py
|
|
18
|
+
bday_cli/modules/__init__.py
|
|
19
|
+
bday_cli/modules/cpu.py
|
|
20
|
+
bday_cli/modules/disk.py
|
|
21
|
+
bday_cli/modules/git_status.py
|
|
22
|
+
bday_cli/modules/memory.py
|
|
23
|
+
bday_cli/modules/uptime.py
|
|
24
|
+
bday_cli/personal_themes/__init__.py
|
|
25
|
+
bday_cli/personal_themes/abhay.py
|
|
26
|
+
bday_cli/personal_themes/anagha.py
|
|
27
|
+
bday_cli/personal_themes/archana.py
|
|
28
|
+
bday_cli/personal_themes/archit.py
|
|
29
|
+
bday_cli/personal_themes/arya.py
|
|
30
|
+
bday_cli/personal_themes/deeksha.py
|
|
31
|
+
bday_cli/personal_themes/krupa.py
|
|
32
|
+
bday_cli/personal_themes/lavanya.py
|
|
33
|
+
bday_cli/themes/__init__.py
|
|
34
|
+
bday_cli/themes/aot.py
|
|
35
|
+
bday_cli/themes/base.py
|
|
36
|
+
bday_cli/themes/demon.py
|
|
37
|
+
bday_cli/themes/vinland.py
|
|
38
|
+
bday_cli/utils/__init__.py
|
|
39
|
+
bday_cli/utils/display.py
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
bday_cli
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=61.0", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "bday-cli"
|
|
7
|
+
version = "1.0.0"
|
|
8
|
+
description = "An anime-themed CLI system monitor"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.8"
|
|
11
|
+
license = {text = "MIT"}
|
|
12
|
+
authors = [
|
|
13
|
+
{name = "Your Name", email = "you@email.com"}
|
|
14
|
+
]
|
|
15
|
+
dependencies = [
|
|
16
|
+
"rich",
|
|
17
|
+
"psutil"
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
[project.scripts]
|
|
21
|
+
bday = "bday_cli.cli:main"
|
bday_cli-1.0.0/setup.cfg
ADDED