A modern, cross-platform desktop application for comparing files and visualizing differences with a beautiful, intuitive interface.
- File Comparison: Compare any two text files side-by-side or in unified view
- Multiple File Types: Support for code files, images, archives, and more
- Visual Diff: Highlighted differences with syntax highlighting
- Drag & Drop: Easy file upload with drag and drop interface
- Export Options: Copy differences to clipboard or download diff files
- Customizable: Toggle line numbers, whitespace handling, and view modes
- Modern UI: Beautiful dark theme with smooth animations
- Cross-Platform: Works on Windows, macOS, and Linux
-
Clone the repository
git clone https://github.com/yourusername/SpotTheDiff.git cd SpotTheDiff
-
Install dependencies
npm install
-
Run in development mode
npm run tauri dev
npm run tauri build
The built application will be available in the src-tauri/target/release
directory.
- Frontend: React 19 + TypeScript + Vite
- Backend: Rust + Tauri 2
- UI: Tailwind CSS + Framer Motion
- File Processing: diff.js + highlight.js
- Icons: Lucide React
SpotTheDiff/
├── src/ # React frontend source
│ ├── components/ # UI components
│ ├── lib/ # Utility functions
│ └── App.tsx # Main application component
├── src-tauri/ # Rust backend
│ ├── src/ # Rust source code
│ └── tauri.conf.json # Tauri configuration
├── public/ # Static assets
└── package.json # Node.js dependencies
- Launch the application
- Upload files by dragging and dropping or clicking the upload areas
- Compare files - the app will automatically detect differences
- Customize view using the settings panel:
- Toggle line numbers
- Ignore whitespace changes
- Switch between unified and side-by-side views
- Export results by copying to clipboard or downloading
The application can be customized through the settings panel:
- Line Numbers: Show/hide line numbers in the diff view
- Whitespace: Ignore whitespace changes when comparing
- View Mode: Choose between unified and side-by-side diff views
- Theme: Dark theme optimized for code readability
npm run dev
- Start development servernpm run build
- Build for productionnpm run tauri dev
- Run Tauri in development modenpm run tauri build
- Build Tauri applicationnpm run preview
- Preview production build
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Tauri for cross-platform desktop apps
- UI components powered by Tailwind CSS
- Animations by Framer Motion
- File diffing with diff.js
SpotTheDiff - Making file comparison beautiful and intuitive.