A cross-platform, GUI-based file manager written in Python using CustomTkinter.
The program allows browsing directories, opening files, creating and renaming files and folders, and navigating drives.
It features a dark theme with blue accents and a clean, intuitive interface.
It features a dark theme with blue accents and a clean, intuitive interface, compatible with Windows, macOS, and Linux.
- Open / Enter – Open files with the system’s default application or enter folders to navigate deeper.
- Create Folder – Create new folders in the current directory.
- Create File – Create new empty files.
- Rename – Rename files or folders.
- Delete File – Delete files only (folder deletion blocked for safety).
- Home – Return to the user’s home directory.
- Back – Go to the parent folder.
- Choose Folder – Browse and select a folder using a dialog.
- Drive Selector (Windows) – Quickly switch between C, D, E, F drives.
- Cross-platform – Works on Windows, macOS, and Linux. On macOS/Linux, drive selector is replaced with a label.
| Type | Description |
|---|---|
| Folder | Displayed with [Folder] prefix and distinguished in the list. |
| File | Displayed normally with ability to open using double-click. |
- Clone the repository:
git clone https://github.com/coding-squad-pesu/File-Manager.git cd File-Manager - Install dependencies: pip install customtkinter
- Run the program: python fm_simple.py
- Use the interface buttons and top bar to navigate, open files, and manage folders/files.
- Folder deletion is disabled to prevent accidental data loss.
- File/folder names must be valid for the operating system.
- Only existing files/folders can be renamed or opened.
Displays the main interface with navigation buttons, path bar, drive selector (on Windows), and file/folder list.

Shows the dialog and confirmation flow for creating a new empty file inside the selected directory.

Demonstrates file selection and the delete operation using the file manager's action buttons.

- Add file preview (text/images) inside the GUI.
- Implement multi-file selection and batch operations.
- Add search functionality within folders.
- Add theme customization (light/dark mode toggle).
Written in Python 3.8+ using:
import os
import sys
import subprocess
import customtkinter as ctk
import tkinter as tk
from tkinter import filedialog, simpledialog, messagebox- CustomTkinter for GUI
- Standard Python libraries: os, sys, subprocess, tkinter
Open-source project created for educational purposes and demonstration of a cross-platform GUI-based file manager in Python.