ikali 1.0.3__py3-none-any.whl

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.
@@ -0,0 +1,43 @@
1
+ Metadata-Version: 2.4
2
+ Name: ikali
3
+ Version: 1.0.3
4
+ Summary: iKali, runs a command when typing ikali into the terminal.
5
+ Home-page: https://github.com/HypaTobaYT/ikali
6
+ Author: Hypa
7
+ Author-email: hypertobayt@gmail.com
8
+ Classifier: Programming Language :: Python :: 3
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Operating System :: POSIX :: Linux
11
+ Classifier: Environment :: Console
12
+ Requires-Python: >=3.6
13
+ Description-Content-Type: text/markdown
14
+ Dynamic: author
15
+ Dynamic: author-email
16
+ Dynamic: classifier
17
+ Dynamic: description
18
+ Dynamic: description-content-type
19
+ Dynamic: home-page
20
+ Dynamic: requires-python
21
+ Dynamic: summary
22
+
23
+ # iKALI
24
+
25
+ This was created out of boredom.
26
+
27
+ ## Installation (May require pip3)
28
+ ```bash
29
+ pip install ikali
30
+ ```
31
+ ## Update
32
+ ```bash
33
+ pip install -U ikali
34
+ ```
35
+ ## Uninstall
36
+ ```bash
37
+ pip uninstall ikali
38
+ ```
39
+
40
+ ## Usage
41
+ ```bash
42
+ ikali
43
+ ```
@@ -0,0 +1,6 @@
1
+ ikali.py,sha256=SIj-R2MgEf1uw25QE0Z23WvMciD3jNZUMvdBHRDc-uQ,5489
2
+ ikali-1.0.3.dist-info/METADATA,sha256=C8jLy3yhYlyXY3G815chUm6eM2UsYcyDoBMGbnhuIP0,856
3
+ ikali-1.0.3.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
4
+ ikali-1.0.3.dist-info/entry_points.txt,sha256=bSPyWDw6B7m0t3SW7koU3Ea4LQ6UZ7c_UihcIRSmZa0,37
5
+ ikali-1.0.3.dist-info/top_level.txt,sha256=EyM7_SIR4_QYX-DqbpCzx1A-f0_UIJDKSUSGRUd8VQ8,6
6
+ ikali-1.0.3.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.10.1)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ ikali = ikali:main
@@ -0,0 +1 @@
1
+ ikali
ikali.py ADDED
@@ -0,0 +1,180 @@
1
+ """
2
+ iKALI - The iCarly-themed terminal experience
3
+ A joke on Kali Linux meets iCarly
4
+ Now with TRUE RGB gradient colors!
5
+ """
6
+ import time
7
+ import sys
8
+ import os
9
+ import math
10
+
11
+ def rgb_to_ansi(r, g, b):
12
+ """Convert RGB to ANSI true color code"""
13
+ return f"\033[38;2;{r};{g};{b}m"
14
+
15
+ def reset_color():
16
+ """Reset color to default"""
17
+ return "\033[0m"
18
+
19
+ def get_rainbow_rgb(position):
20
+ """Generate smooth RGB rainbow color using HSV color wheel"""
21
+ # Normalize position to 0-1 range
22
+ hue = (position % 360) / 360.0
23
+
24
+ # Convert HSV (hue, saturation=1, value=1) to RGB
25
+ h = hue * 6.0
26
+ x = 1 - abs((h % 2) - 1)
27
+
28
+ if h < 1:
29
+ r, g, b = 1, x, 0
30
+ elif h < 2:
31
+ r, g, b = x, 1, 0
32
+ elif h < 3:
33
+ r, g, b = 0, 1, x
34
+ elif h < 4:
35
+ r, g, b = 0, x, 1
36
+ elif h < 5:
37
+ r, g, b = x, 0, 1
38
+ else:
39
+ r, g, b = 1, 0, x
40
+
41
+ # Convert to 0-255 range
42
+ return int(r * 255), int(g * 255), int(b * 255)
43
+
44
+ def rainbow_text(text, offset=0):
45
+ """Apply smooth gradient rainbow colors to text"""
46
+ result = ""
47
+ char_count = 0
48
+ for char in text:
49
+ if char != ' ' and char != '\n':
50
+ # Calculate hue position (0-360 degrees)
51
+ hue = (offset * 10 + char_count * 8) % 360
52
+ r, g, b = get_rainbow_rgb(hue)
53
+ result += rgb_to_ansi(r, g, b) + char
54
+ char_count += 1
55
+ else:
56
+ result += char
57
+ return result + reset_color()
58
+
59
+ def clear_screen():
60
+ """Clear the terminal screen"""
61
+ os.system('clear' if os.name != 'nt' else 'cls')
62
+
63
+ def hide_cursor():
64
+ """Hide the terminal cursor"""
65
+ sys.stdout.write('\033[?25l')
66
+ sys.stdout.flush()
67
+
68
+ def show_cursor():
69
+ """Show the terminal cursor"""
70
+ sys.stdout.write('\033[?25h')
71
+ sys.stdout.flush()
72
+
73
+ def print_logo_animated():
74
+ """Print iKALI ASCII logo with animated rainbow effect"""
75
+ logo = """
76
+ ██╗██╗ ██╗ █████╗ ██╗ ██╗
77
+ ╚═╝██║ ██╔╝██╔══██╗██║ ██║
78
+ ██╗█████╔╝ ███████║██║ ██║
79
+ ██║██╔═██╗ ██╔══██║██║ ██║
80
+ ██║██║ ██╗██║ ██║███████╗██║
81
+ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝
82
+ """
83
+
84
+ lines = logo.strip().split('\n')
85
+
86
+ # Print initial logo
87
+ for line in lines:
88
+ print(rainbow_text(line, offset=0))
89
+
90
+ # Animate the logo with smooth gradient flow
91
+ for cycle in range(1, 36): # Full color wheel cycle
92
+ sys.stdout.write(f'\033[{len(lines)}A') # Move cursor up
93
+ for line in lines:
94
+ sys.stdout.write('\033[K') # Clear line
95
+ print(rainbow_text(line, offset=cycle))
96
+ sys.stdout.flush()
97
+ time.sleep(0.05) # Smooth animation speed
98
+
99
+ def print_line_animated(text, cycles=36, delay=0.05):
100
+ """Print a single line with animated gradient rainbow effect"""
101
+ # Print initial version
102
+ print(rainbow_text(text, offset=0))
103
+
104
+ # Animate it through color spectrum
105
+ for cycle in range(1, cycles):
106
+ sys.stdout.write('\033[1A') # Move up one line
107
+ sys.stdout.write('\033[K') # Clear the line
108
+ print(rainbow_text(text, offset=cycle))
109
+ sys.stdout.flush()
110
+ time.sleep(delay)
111
+
112
+ def sing_theme():
113
+ """Display the iCarly theme song lyrics with animation"""
114
+ lyrics = [
115
+ "I know, you see",
116
+ "Somehow the world will change for me",
117
+ "And be so wonderful",
118
+ "",
119
+ "Live life, breathe air",
120
+ "I know somehow we're gonna get there",
121
+ "And feel so wonderful",
122
+ "",
123
+ "It's all for real",
124
+ "I'm telling you just how I feel",
125
+ "So wake up the members of my nation",
126
+ "It's your time to be",
127
+ "There's no chance unless you take one",
128
+ "And the time to see",
129
+ "The brighter side of every situation",
130
+ "Some things are meant to be",
131
+ "So give me your best and leave the rest to me",
132
+ "",
133
+ "Leave it all to me",
134
+ "leave it all to me",
135
+ "Just leave it all to me",
136
+ ]
137
+
138
+ for line in lyrics:
139
+ if line:
140
+ print_line_animated(line, cycles=36, delay=0.05)
141
+ time.sleep(0.4)
142
+ else:
143
+ print()
144
+ time.sleep(0.3)
145
+
146
+ def footer():
147
+ """Print footer message"""
148
+ print("\n")
149
+ messages = [
150
+ "iKALI: a stupid command that shouldn't exist.",
151
+ "Not affiliated with Kali Linux or Nickelodeon.",
152
+ "Powered by nostalgia and plenty of Vodka.",
153
+ ]
154
+
155
+ for msg in messages:
156
+ print_line_animated(msg, cycles=36, delay=0.05)
157
+ time.sleep(0.3)
158
+ print()
159
+
160
+ def main():
161
+ """Main function"""
162
+ try:
163
+ hide_cursor()
164
+ clear_screen()
165
+ print_logo_animated()
166
+ print("\n")
167
+ time.sleep(0.8)
168
+ sing_theme()
169
+ time.sleep(1)
170
+ footer()
171
+ time.sleep(3)
172
+ show_cursor()
173
+ except KeyboardInterrupt:
174
+ show_cursor()
175
+ r, g, b = get_rainbow_rgb(60) # Yellow
176
+ print(f"\n\n{rgb_to_ansi(r, g, b)}Interrupted! See you later! 👋{{r{eset_color()}")
177
+ sys.exit(0)
178
+
179
+ if __name__ == "__main__":
180
+ main()