Python Folder to ZIP Compressor GUI – FuzzuTech Hacker Style App
Demo :
Click Video πππ
πΈ Description:
Convert folders to ZIP with this Python GUI made using tkinter. Stylish, fast, and totally offline. Created by FuzzuTech.
πΈ Features:
-
Fully Offline ZIP Converter
-
Built in Python with
zipfile
,os
,tkinter
,Pillow
-
Hacker-Style Dark GUI with fast execution
-
No external API, no lag – just fast zip creation
-
Ideal for coders, students, devs
Code :
import tkinter as tk
from tkinter import filedialog, messagebox
import zipfile, os
from PIL import Image, ImageTk
class FolderToZip:
def __init__(self, root):
self.root = root
self.root.title("FuzzuTech - Folder To ZIP")
self.root.geometry("500x400")
self.root.config(bg="#101010")
self.root.resizable(False, False)
# === Icon Section ===
try:
img = Image.open("assets/zip_icon.png")
img = img.resize((80, 80))
self.icon = ImageTk.PhotoImage(img)
tk.Label(root, image=self.icon, bg="#101010").pack(pady=10)
except:
tk.Label(root, text="π", font=("Arial", 28), fg="#ffffff", bg="#101010").pack(pady=10)
# === Title ===
tk.Label(root, text="Folder ➜ ZIP Compressor", font=("Helvetica", 22, "bold"),
fg="#00ffee", bg="#101010").pack()
# === Folder Path Entry ===
self.folder_path = tk.StringVar()
tk.Entry(root, textvariable=self.folder_path, font=("Arial", 12),
width=40, bg="#262626", fg="white", bd=0,
relief="flat", state="readonly").pack(pady=20)
# === Browse Button ===
tk.Button(root, text="Choose Folder", font=("Arial", 12, "bold"),
bg="#00ffee", fg="black", command=self.browse).pack(pady=5)
# === Convert Button ===
tk.Button(root, text="Convert to ZIP", font=("Arial", 13, "bold"),
bg="#ffaa00", fg="white", width=20, command=self.zip_folder).pack(pady=20)
# === Footer ===
tk.Label(root, text="Developed by FuzzuTech", font=("Arial", 10),
fg="#777", bg="#101010").pack(side="bottom", pady=10)
def browse(self):
folder = filedialog.askdirectory()
if folder:
self.folder_path.set(folder)
def zip_folder(self):
folder = self.folder_path.get()
if not folder:
messagebox.showerror("Error", "Please select a folder first.")
return
zip_path = filedialog.asksaveasfilename(defaultextension=".zip",
filetypes=[("Zip files", "*.zip")],
initialfile="compressed.zip")
if not zip_path:
return
try:
with zipfile.ZipFile(zip_path, 'w', zipfile.ZIP_DEFLATED) as zipf:
for root_dir, _, files in os.walk(folder):
for file in files:
full_path = os.path.join(root_dir, file)
arcname = os.path.relpath(full_path, folder)
zipf.write(full_path, arcname)
messagebox.showinfo("Success", "Folder successfully compressed!")
except Exception as e:
messagebox.showerror("Error", str(e))
# === Run App ===
if __name__ == "__main__":
root = tk.Tk()
app = FolderToZip(root)
root.mainloop()
Comments
Post a Comment