Skip to content

MehdiSalari/Web-File-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web File Manager (Python + Flask)

A simple, beautiful, and powerful web-based file manager built with Python and Flask. It provides full access to all drives on Windows or the entire filesystem on Linux/macOS.

Web File Manager Screenshot
(Add your own screenshot of the app here)

Features

  • Displays all available drives on Windows (C:, D:, etc.)
  • Clean folder navigation with URL paths (e.g., C:/Users)
  • Appropriate icons for common file types (PDF, images, videos, code, executables, etc.)
  • Direct file download on click
  • Download entire folders as ZIP files
  • Multiple file upload support
  • Create new folders
  • Delete files and folders (with confirmation)
  • Responsive and modern UI using Bootstrap 5 and Bootstrap Icons
  • Password-protected access (set on first run, with option to change later)
  • Logout functionality
  • Fully English interface

Important Security Warning ⚠️

This application provides full read/write/delete access to your entire filesystem and is protected only by a single password.
Run it only on localhost and never expose it to a public network or the internet.
Use at your own risk.

Requirements

  • Python 3.6 or higher (recommended: 3.8+)
  • Flask

Installation & Running

  1. Clone the repository:
git clone https://github.com/MehdiSalari/web-file-manager.git
cd web-file-manager
  1. Install dependencies:
pip install flask
  1. Run the application:
python app.py
  1. Open your browser and go to:
http://localhost:2121

First run: You will be prompted to set a password. This password will be required for all future access.
You can change it later via the "Change Password" button in the top-right corner.

Usage

  • On first access, set your password (or log in if already set).
  • Select a drive from the home page (e.g., C:).
  • Click Go Up to navigate to the parent directory.
  • Click a file → it downloads immediately.
  • Click a folder → enter it.
  • Use the Download ZIP button to download a folder as a compressed archive.
  • Use the Delete button to remove files/folders (with confirmation).
  • Use the bottom section to upload multiple files or create new folders.
  • Use Change Password or Logout buttons in the header for account management.

Technical Notes

  • Paths are always displayed with forward slashes (/) even on Windows.
  • Upload and folder creation are disabled on the root drive list page — you must first select a drive.
  • Fully tested on Windows; works on Linux/macOS (starts from / root).
  • Password is securely hashed (PBKDF2 with random salt) and stored in password.hash.
  • The application is fully responsive and works well on mobile devices.

Contributing

Contributions are welcome! Feel free to open issues or submit pull requests.

Suggested future features:

  • Show file size and modification date
  • Rename files/folders
  • Search within current directory
  • Image preview/thumbnail view
  • Dark mode toggle
  • Multi-user support

License

This project is distributed under the MIT License.


Built with ❤️ by Mehdi Salari

If you like it, give it a star ⭐! 😊

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages