<div align="center">
  <h1>File Tree</h1>
  <h3>🌳 A tool for determining what is using your storage space, and recommending solutions to slim it down. 🌳</h3>

<p>

[![Stars](https://img.shields.io/github/stars/d4m13n-d3v/file_tree?style=social)](https://github.com/d4m13n-d3v/file_tree)
[![Rust](https://img.shields.io/badge/built_with-Rust-dca282.svg)](https://github.com/d4m13n-d3v/file_tree)
[![Typescript](https://img.shields.io/badge/built_with-Typescript-3178C6.svg)](https://github.com/d4m13n-d3v/file_tree)
[![Discord](https://img.shields.io/discord/1195961063183765575?label=chat&logo=discord)](https://discord.gg/8dHnaarghJ)

</p>
<p>

[![Eslint & Clippy](https://github.com/d4m13n-d3v/file_tree_rust/actions/workflows/eslint_clippy.yml/badge.svg)](https://github.com/d4m13n-d3v/file_tree/actions/workflows/eslint_clippy.yml)
[![Build](https://github.com/d4m13n-d3v/file_tree_rust/actions/workflows/build.yml/badge.svg)](https://github.com/d4m13n-d3v/file_tree/actions/workflows/build.yml)

<p>

![Logo](https://files-api.d4m13n.dev/pnwywghBJLJW.png)

</div>

---

## 📚 About

File Tree is a powerful tool designed to help you understand and manage your storage usage effectively. Use it to identify space-hogging files, find duplicate content, and gain detailed insights into the types of files on your system. It is both simple to use and highly customizable for analyzing and optimizing the storage utilization of your device.

---

## 🚀 Features (Present and Planned)

### Currently Available
- **Storage Usage by Folder View**:
    - Visualize the storage usage of each folder on your machine.
    - Interactive drill-down into subfolders to identify large files.
---

### 🌟 Roadmap
Below is a roadmap of future features planned for File Tree to increase its functionality and usefulness:

#### **1. Storage Usage Analysis (Enhanced Visual Stats)**
- **Visualization of Storage by Type:**
    - Charts for understanding how much space is being used by specific file types (e.g., images, videos, documents, binaries).
    - View percentage breakdown of file types across your system.
- Categories planned:
    - **Images**: PNG, JPG, GIF, etc.
    - **Videos**: MP4, AVI, MOV, etc.
    - **Documents**: PDF, DOCX, TXT, etc.
    - **Binaries**: EXE, DLL, SO, and compiled files.

#### **2. Duplicate File Detection**
- **Locate Duplicate Files Across the System:**
    - Allow users to discover duplicate files based on checksums (e.g., hash comparison) or file names.
    - Intuitive interface to preview, compare, and safely delete duplicates.
    - Space-saving recommendations.

#### **3. Automatic File Moving**
- **Automatic File Moving:**
    - Can automatically move files based on the parent folders and file type.

#### **4. Advanced File Search**
- **Search by Attributes**:
    - Search files by size, type, creation date, or last access.
    - Advanced sorting and filtering options.

#### **5. Recommendations to Save Space**
- Smart suggestions to delete or move files that are duplicated, rarely accessed, or taking up large portions of storage without significant usage.

#### **6. Improved UI and Performance**
- Ongoing UI/UX improvements for seamless, smooth operation.
- Optimization of scanning and search algorithms for faster performance on larger file systems.

---

## 🛠️ Tech Stack

File Tree is built using:
- **Backend**: Rust for high-performance file system scanning and durable processing.
- **Frontend**: React + TypeScript for intuitive visualization and interactivity.

---

## 💻 Installation
Download the installer for your platform

https://github.com/D4M13N-D3V/file_tree/releases/latest

---

## 📅 Planned Releases

| Version | Planned Features                                                                      | Target Date                 |
|---------|---------------------------------------------------------------------------------------|-----------------------------|
| 1.1.0   | **Storage Usage**: View and discovery storage usage by folder on your device.         | Second Half of Febuary 2025 |
| 1.2.0   | **Duplicate Detection**: Identify and manage and auto delete duplicate files          | First Half of March 2025    |
| 2.3.0   | **File Search**: Instant results global device search functionality                   | Second Half of March 2025   |
| 2.4.0   | **Automatic File Moving**: Move files based on type if not under given parent folder. | First Half of April 2025    |
| 2.5.0   | **Visualization Improvements**: Charts for file types breakdown + percentage stats    | First Half of April 2025    |
| 3.4.0   | **Recommendations**: Space-saving ideas based on known storage patterns               | Second Half of April 2025   |

---

## 📖 Contributing

We welcome contributions to help improve File Tree! Please refer to our [CONTRIBUTING.md](https://github.com/d4m13n-d3v/file_tree/blob/main/CONTRIBUTING.md) for guidelines on how to get started.

---

## 📧 Contact & Community

- Join our [Discord community](https://discord.gg/8dHnaarghJ) to discuss new ideas and collaborate with the developers.
- Report issues or request features on [GitHub Issues](https://github.com/d4m13n-d3v/file_tree/issues).

---

## ❗ Disclaimer

File Tree does not delete, modify, or manage files without explicit user action. Use at your own discretion for analysis and optimization.

---
