Smart-File-Organizer Svelte Themes

Smart File Organizer

A modern, cross-platform desktop application for automatically organizing and managing your files. Built with Tauri, Svelte, and Rust for performance, small build size, and a great user experience.

Smart File Organizer

A modern, cross-platform desktop application for automatically organizing and managing your files. Built with Tauri, Svelte, and Rust for performance, small build size, and a great user experience.

Features

  • šŸ” Real-Time Folder Monitoring: Automatically detect and organize new files as they appear
  • šŸ·ļø Custom Tagging System: Create, assign, and filter by tags to easily find files
  • ⚔ Intelligent File Organization: Automatically sort files based on extension or custom rules
  • ā˜ļø Cloud Backup (Optional): Securely backup important files to AWS S3
  • šŸ–„ļø Native Performance: Blazing fast operations with minimal resource usage
  • āš™ļø Extensible Rules: Define custom organization rules based on file patterns
  • 🧩 Drag-and-Drop Interface: Intuitive UI for manual file management
  • šŸ”„ Cross-Platform: Works on macOS and Windows

Installation

Requirements

Setup

  1. Clone the repository:
git clone https://github.com/yourusername/smart-file-organizer.git
cd smart-file-organizer
  1. Run the installation script:
# Make the script executable
chmod +x install.sh

# Run the script
./install.sh
  1. Start the development server:
npm run tauri dev

Usage

Monitoring Folders

  1. Click "Select Folder" to choose a directory to monitor
  2. Click "Start Monitoring" to begin watching for new files
  3. New files will be automatically organized based on your rules

Organizing Files Manually

  1. Use the drag-and-drop interface to organize files manually
  2. Drag files into the application to trigger automatic organization

Tagging Files

  1. Select files in the file browser
  2. Click the tag icon to add or remove tags
  3. Use the sidebar to filter files by tag

Cloud Backup

  1. Navigate to the Cloud Backup section
  2. Configure your AWS S3 credentials
  3. Select folders to back up
  4. Choose backup frequency

Building for Production

To create a production-ready build:

npm run tauri build

This will create installable packages for your current platform in the src-tauri/target/release/bundle directory.

Architecture

The application is built using:

  • Tauri: Core framework connecting Rust backend with Svelte frontend
  • Svelte: Fast, reactive UI framework with minimal overhead
  • Rust: High-performance backend handling file operations and database
  • SQLite: Local database for storing file metadata and tags
  • AWS SDK for Rust: Optional cloud functionality

Directory Structure

smart-file-organizer/
ā”œā”€ā”€ src/                     # Svelte frontend
│   ā”œā”€ā”€ routes/              # Svelte pages
│   └── app.css              # Global styles (Tailwind)
ā”œā”€ā”€ src-tauri/               # Rust backend
│   ā”œā”€ā”€ src/                 # Rust source code
│   │   ā”œā”€ā”€ commands.rs      # Tauri command handlers
│   │   ā”œā”€ā”€ database.rs      # SQLite integration
│   │   ā”œā”€ā”€ file_ops.rs      # File monitoring and operations
│   │   ā”œā”€ā”€ cloud_sync.rs    # AWS S3 integration
│   │   ā”œā”€ā”€ utils.rs         # Utility functions
│   │   └── main.rs          # Application entry point
│   ā”œā”€ā”€ Cargo.toml           # Rust dependencies
│   └── tauri.conf.json      # Tauri configuration
ā”œā”€ā”€ tailwind.config.js       # Tailwind CSS configuration
ā”œā”€ā”€ package.json             # NPM dependencies
└── README.md                # You are here!

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Top categories

Loading Svelte Themes