Main Channel Down? No Worries! Try This Viral Python App – Fuzzu Color Palette Generator π¨π₯
Demo :
Click Video πππ
✅ Features:
-
π― One-click HEX code copy
-
π¨ Random palette generation
-
π RGB to HEX auto-display
-
π» Built with Python & CustomTkinter
-
π±️ Interactive GUI
-
π Auto-copy to clipboard
-
π‘ For designers, devs & creatives
-
π 100% open-source & beginner-friendly
Code :
import customtkinter as ctk
import random
import pyperclip
ctk.set_appearance_mode("dark")
ctk.set_default_color_theme("dark-blue")
class ColorPaletteGenerator(ctk.CTk):
def __init__(self):
super().__init__()
self.title("π¨ Fuzzu Color Palette Generator")
self.geometry("630x350")
self.resizable(False, False)
# Title
self.label_title = ctk.CTkLabel(self, text="π¨ Random Color Palette Generator", font=("Arial", 22, "bold"))
self.label_title.pack(pady=20)
# Frame for palette
self.palette_frame = ctk.CTkFrame(self)
self.palette_frame.pack(padx=20, pady=10, fill="x")
# Create 5 color boxes
self.color_boxes = []
self.color_labels = []
for i in range(5):
box = ctk.CTkFrame(self.palette_frame, width=100, height=120, corner_radius=12)
box.grid(row=0, column=i, padx=10)
box.pack_propagate(False)
label = ctk.CTkLabel(box, text="", font=("Arial", 12, "bold"))
label.pack(side="bottom", pady=8)
box.bind("<Button-1>", lambda e, idx=i: self.copy_color(idx))
label.bind("<Button-1>", lambda e, idx=i: self.copy_color(idx))
self.color_boxes.append(box)
self.color_labels.append(label)
# Generate button
self.button_generate = ctk.CTkButton(self, text="Generate Palette", command=self.generate_palette, font=("Arial", 16))
self.button_generate.pack(pady=20)
# Info Label
self.info_label = ctk.CTkLabel(self, text="Click any color box to copy HEX code", font=("Arial", 12, "italic"))
self.info_label.pack()
self.generate_palette()
def generate_palette(self):
self.colors = []
for i in range(5):
hex_color = self.random_hex_color()
rgb_color = self.hex_to_rgb(hex_color)
self.colors.append(hex_color)
self.color_boxes[i].configure(fg_color=hex_color)
self.color_labels[i].configure(text=f"{hex_color}\nRGB: {rgb_color}")
def random_hex_color(self):
return "#" + "".join(random.choices("0123456789ABCDEF", k=6))
def hex_to_rgb(self, hex_color):
h = hex_color.lstrip("#")
return f"{int(h[0:2],16)}, {int(h[2:4],16)}, {int(h[4:6],16)}"
def copy_color(self, idx):
hex_code = self.colors[idx]
pyperclip.copy(hex_code)
self.info_label.configure(text=f"Copied {hex_code} to clipboard!")
if __name__ == "__main__":
app = ColorPaletteGenerator()
app.mainloop()
Comments
Post a Comment