Skip to content

Feat: UI/UX, performance improvements

Compare
Choose a tag to compare
@adibzailan adibzailan released this 12 Sep 06:13
· 11 commits to main since this release
58597c1

Release v1.2.0

This release of File Copier brings significant improvements to the user experience, visibility, and overall application performance.

New Features and Improvements

  • Improved UI visibility and contrast
  • Updated status list to ensure text is clearly visible
  • Refined layout for better usability
  • Updated PyInstaller script for improved packaging

Existing Features

  • Support for multiple copy sets (source-destination pairs)
  • Real-time, bidirectional synchronization for each copy set
  • User-friendly GUI with improved visibility and contrast
  • Initial full copy when folders are first selected for each copy set
  • Periodic full synchronization at user-specified intervals (global setting for all copy sets)
  • Real-time monitoring and handling of file changes (create, modify, delete, rename) for each copy set
  • Customizable global synchronization interval
  • Add and remove copy sets dynamically
  • Built with PyQt6 and watchdog for robust performance

Installation

  1. Download the standalone executable for your platform from the assets below.
  2. Run the executable to start the File Copier application.

Usage

  1. Launch the File Copier application.
  2. Click "Add New Copy Set" to create a new source-destination pair.
  3. For each copy set:
    • Click "SELECT" next to "Source:" to choose the source folder.
    • Click "SELECT" next to "Destination:" to choose the destination folder.
  4. Set the global copy interval using the slider or input box at the bottom.
  5. Monitor the synchronization status for all copy sets in the status area.
  6. Add or remove copy sets as needed using the "Add New Copy Set" and "Remove" buttons.

For Developers

If you want to run the application from source or contribute to the project:

  1. Clone the repository:
git clone https://github.com/adibzailan/file-copier.git
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the application:
python ui_main.py
  1. To package the application:
python pyinstaller_script.py

The packaged executable will be in the 'dist' folder.

Project Structure

  • core/: Contains core functionality like app logic and file operations
  • ui/: Houses the user interface components
  • ui_main.py: Entry point of the application
  • requirements.txt: List of Python dependencies
  • pyinstaller_script.py: Script for creating standalone executables

Troubleshooting

If you encounter any issues:

  1. Ensure that you have the correct permissions to read from and write to the source and destination folders.
  2. Check for any error messages displayed in the application's status area.
  3. Make sure you have sufficient disk space in the destination folder for the copying operations.

For more detailed information about the application, its features, and how to use it, please refer to the README.md file in the project repository.