Skip to content

StratoSort is an AI-powered desktop file organization application built with Tauri and Rust, featuring local AI analysis via Ollama, semantic search across 91+ file types, smart folder automation, and comprehensive testing with 119 API commands.

License

Notifications You must be signed in to change notification settings

iLevyTate/StratoSort

Repository files navigation

StratoSort - AI-Powered File Organization

StratoSort Logo

🟒 Production Ready | Backend: Fully Tested & Verified | Frontend: Ready for Integration

πŸ“Š Production Status

  • βœ… 84 tests passing (100% pass rate)
  • βœ… 199 Tauri commands - Complete API (see COMMAND_INVENTORY.md)
  • βœ… Security hardened - 11/11 critical issues resolved
  • βœ… Learning system - Fully integrated with workflow
  • βœ… Production-ready - Ready for deployment (Deployment Guide)
  • ⚠️ Frontend - Basic placeholder, ready for Vue/React implementation

πŸ“š Documentation

Core Documentation

Deployment & Reports

πŸš€ Quick Start

Build & Run

cd src-tauri
cargo build --release
.\target\release\stratosort-app.exe

CLI Usage (Headless)

cd src-tauri
cargo build --release --bin stratosort-cli
.\target\release\stratosort-cli.exe analyze C:\Path\To\Files --recursive

πŸ”„ Core Workflow Sequence

sequenceDiagram
    participant User
    participant Frontend
    participant Commands
    participant FileAnalyzer
    participant AI Service
    participant Organizer
    participant Database
    participant FileSystem
    
    User->>Frontend: Drop files
    Frontend->>Commands: scan_directory()
    Commands->>FileAnalyzer: analyze_batch()
    
    par Parallel Analysis
        FileAnalyzer->>AI Service: analyze_file()
        AI Service->>AI Service: Ollama/Fallback
        FileAnalyzer->>Database: generate_embeddings()
        Database->>Database: Store vectors
    end
    
    FileAnalyzer-->>Commands: Analysis results
    Commands-->>Frontend: Progress events
    
    Frontend->>Commands: apply_organization()
    Commands->>Organizer: organize_files()
    
    Organizer->>Database: match_smart_folders()
    Database-->>Organizer: Best matches
    
    Organizer->>Organizer: Check learned patterns
    Organizer->>FileSystem: Move files
    Organizer->>Database: Save undo history
    
    Organizer-->>Commands: Success
    Commands-->>Frontend: Completion event
    Frontend-->>User: Updated UI
Loading

🎯 Key Capabilities

πŸ“ File Processing

  • 91+ file types supported (documents, images, audio, archives, 3D models)
  • Concurrent analysis with progress tracking
  • AI-powered categorization with confidence scoring
  • OCR text extraction for images and PDFs

πŸ—‚οΈ Smart Organization

  • AI-suggested folder structures based on file content
  • Smart naming conventions with 5 predefined patterns (date-first, descriptive, project-based, semantic, keep-original)
  • Batch operations with atomic transactions
  • Full undo/redo with operation history
  • Behavioral learning from user actions

πŸ” Advanced Search

  • Semantic search with vector embeddings
  • Full-text search across all file types
  • Category filtering and search history
  • Real-time search with live results

πŸ€– Local AI Integration

  • Ollama-powered analysis (llama3.2:3b, llava:7b, nomic-embed-text)
  • Privacy-first - all processing happens locally
  • Fallback mode when Ollama unavailable
  • Automatic model management

πŸ› οΈ Development

Prerequisites

Testing

# Run all tests (84 tests - 100% passing)
cd src-tauri
cargo test --lib

# Run with output
cargo test --lib -- --nocapture

# Run specific test module
cargo test ai::tests
cargo test core::undo_redo::tests

# Verify all tests pass
cargo test --lib 2>&1 | grep "test result"
# Expected: test result: ok. 84 passed; 0 failed

Build & Run

# Development build
cargo build

# Release build (optimized)
cargo build --release

# Run GUI application
cargo run --bin stratosort-app

# Run CLI tool
cargo run --bin stratosort-cli -- analyze --help

πŸ“ License

MIT License - See LICENSE for details


πŸš€ Ready for Production | πŸ”§ Backend Complete | 🎨 Frontend Opportunity

About

StratoSort is an AI-powered desktop file organization application built with Tauri and Rust, featuring local AI analysis via Ollama, semantic search across 91+ file types, smart folder automation, and comprehensive testing with 119 API commands.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •