Skip to content

rskworld/file-manager

Repository files navigation

File Manager - Desktop File Management Application

File Manager

Author: RSK World (https://rskworld.in)
Founded by: Molla Samser
Designer & Tester: Rima Khatun
Contact: help@rskworld.in, +91 93305 39277
Year: 2026

Description

A complete desktop file manager using Python and Tkinter. Features file operations, search functionality, folder navigation, and file preview. Perfect for learning Python GUI development, file operations, and desktop application design.

Features

  • File Operations: Copy, cut, paste, rename, delete, duplicate files and folders
  • Search: Real-time filter + advanced search (subfolders, results list)
  • Navigation: Back / forward history, up, home, path bar, quick-access sidebar
  • Bookmarks: Save favorite folders (persisted)
  • Themes: Light / dark mode
  • Compression: Create ZIP archives; extract ZIP files
  • Open in Terminal: Launch terminal at current folder
  • File Preview: Preview text/code files; properties panel with permissions, folder size
  • Sort: Click column headers to sort by name, size, modified, type
  • Hidden Files: Toggle show/hide hidden files
  • Keyboard Shortcuts: Ctrl+C/X/V, Delete, F2, F5, Ctrl+N, Ctrl+F, Ctrl+B
  • Context Menu: Right-click for open, rename, cut, copy, paste, delete, duplicate, compress, extract, properties
  • Cross-platform: Windows, macOS, Linux

Technologies Used

  • Python 3.6+ - Core programming language
  • Tkinter - GUI framework
  • OS Module - File system operations
  • Pathlib - Modern path handling
  • Threading - For responsive operations

Installation

Prerequisites

  • Python 3.6 or higher
  • Tkinter (usually comes pre-installed with Python)

Setup

  1. Clone or download this repository
  2. Navigate to the project directory
  3. Install dependencies (if any):
    pip install -r requirements.txt

Documentation: Open index.html in a browser for full project details, installation guide, file explanations, and more.

Usage

Running the Application

python file_manager.py

Basic Operations

  1. Navigation:

    • Double-click folders to enter them
    • Use the toolbar buttons (Back, Forward, Up, Home)
    • Enter path directly in the path bar
  2. File Operations:

    • Right-click on files/folders for context menu
    • Use keyboard shortcuts:
      • Ctrl+C - Copy
      • Ctrl+X - Cut
      • Ctrl+V - Paste
      • Delete - Delete
      • F2 - Rename
      • F5 - Refresh
      • Ctrl+N - New Folder
      • Ctrl+F - Focus search box
      • Ctrl+B - Add bookmark
  3. Search:

    • Type in the search box for real-time filtering
    • Click Adv for advanced search (subfolders, results list)
  4. Preview:

    • Select any file to see its preview
    • Text files show content preview
    • All files show detailed information

Project Structure

file-manager/
├── file_manager.py          # Main application
├── main.py                 # Entry point (checks deps, runs app)
├── config.py               # Settings, file types, icons
├── utils.py                # Helpers (format, open, terminal, etc.)
├── index.html              # Project docs (details, installation, file guide)
├── README.md               # Documentation
├── LICENSE                 # MIT license
├── CONTRIBUTING.md         # Contribution guide
├── CHANGELOG.md            # Version history
├── requirements.txt        # Dependencies (stdlib only by default)
└── setup.py                # Installable package

Code Structure

Main Classes

  • FileManager: Main application class
    • GUI setup and initialization
    • File operations handling
    • Event management
    • Preview functionality

Key Methods

  • load_directory(): Load and display directory contents
  • copy_files(), cut_files(), paste_files(): Clipboard operations
  • search_files(): Search functionality
  • update_preview(): File preview system
  • create_widgets(): GUI component creation

Features in Detail

File Operations

  • Copy/Cut/Paste: Full clipboard support with visual feedback
  • Rename: F2 shortcut or right-click menu
  • Delete: Safe deletion with confirmation
  • New File/Folder: Create new items quickly

Search System

  • Real-time Search: Filter results as you type
  • Recursive Search: Search through subdirectories
  • Case-insensitive: Find files regardless of case

Preview System

  • Text Files: Preview content for readable files
  • File Info: Show size, type, creation/modification dates
  • Icons: Visual file type indicators

User Interface

  • Modern Design: Clean, professional interface
  • Responsive: Smooth interactions and feedback
  • Intuitive: Easy to learn and use

Keyboard Shortcuts

Shortcut Action
Ctrl+C Copy selected items
Ctrl+X Cut selected items
Ctrl+V Paste items
Delete Delete selected items
F2 Rename selected item
F5 Refresh current directory
Ctrl+N Create new folder
Ctrl+F Focus search box
Ctrl+B Add bookmark
Ctrl+A Select all (in file list)
Enter Navigate to entered path

Error Handling

The application includes comprehensive error handling for:

  • Permission denied errors
  • File not found errors
  • Invalid path operations
  • Network drive issues
  • Corrupted file handling

Cross-Platform Compatibility

  • Windows: Uses os.startfile() for opening files
  • macOS: Uses open command
  • Linux: Uses xdg-open command

Performance Considerations

  • Efficient directory loading with sorting
  • Lazy loading for large directories
  • Thread-safe operations
  • Memory-efficient file previews

Future Enhancements

Potential features for future versions:

  • Tabbed interface for multiple directories
  • Plugin system for additional features
  • Network drive support
  • File synchronization
  • Send to trash (optional: send2trash package)

Contributing

Contributions are welcome! Please feel free to submit issues, feature requests, or pull requests.

Development Setup

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

License

This project is part of RSK World's educational resources. Content is used for educational purposes only.

Support

For support, questions, or feedback:

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Our Services

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal


© 2026 RSK World. All rights reserved.
Content used for educational purposes only. View Disclaimer

About

Create a complete desktop file manager using Python and Tkinter. Features file operations, search functionality, folder navigation, and file preview. Perfect for learning Python GUI development, file operations, and desktop application design.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors