v1.0  ·  Windows

Intelligent disk
compression.
Automatic.

SmartCompress FS monitors available disk space and automatically compresses your least-used files before storage runs out — losslessly, intelligently, with full restoration support.

~60%
Avg. compression ratio
2
Algorithms — Gzip & Zlib
0
Data loss — fully lossless
SmartCompress FS ● Active
Input Queue
5 files  ·  2.89 GB total  ·  Disk at 87%
MP4
lecture_rec.mp4
14 days since accessed
1.2 GB
TAR
backup_old.tar
30 days since accessed
890 MB
ZIP
raw_photos.zip
22 days since accessed
540 MB
CSV
dataset.csv
8 days since accessed
210 MB
TXT
notes.txt
3 days since accessed
48 MB
▼ Gzip
Zlib ▼
Output
Lossless  ·  Metadata saved
GZ
lecture_rec.mp4.gz
456 MB↓ 62%
GZ
backup_old.tar.gz
400 MB↓ 55%
GZ
raw_photos.zip.gz
173 MB↓ 68%
GZ
dataset.csv.gz
124 MB↓ 41%
GZ
notes.txt.gz
31 MB↓ 35%

Capabilities

Built to solve the problem,
not just describe it.

Every component is purpose-built: monitoring, prioritisation, compression, metadata, and restoration — fully integrated.

📡

Real-time Disk Monitoring

Polls disk usage every 10 seconds via psutil. Triggers compression automatically when available space drops below a configurable threshold (default 85%).

⚖

Intelligent Prioritisation

Ranks candidate files by last-access time and size. Large files untouched for weeks are compressed first, maximising space recovered per cycle.

🔒

Lossless Compression

Gzip and Zlib are both supported. Every compressed file can be restored byte-for-byte to its original state — no data is ever discarded.

🗃

Metadata Preservation

Original file paths, access timestamps, and algorithm choice are persisted in a JSON store. Decompression restores files to their exact original locations.

⌨

Graphical Interface

A Tkinter-based GUI provides manual compress and decompress controls, a live compressed-file registry, and a real-time disk usage display.

📋

Structured Logging

All compression and decompression events are timestamped and written to a log file, providing full auditability of every system action.

Interactive Demo

Watch it run.

Press Run SmartCompress to simulate a full compression cycle — disk detection, file prioritisation, and lossless compression, step by step.

Simulation — SmartCompress FS

Disk Status

87%
Used
174.0 GB200 GB
Results
Before--
After--
Freed--

File Queue

lecture_recording.mp41.2 GBQueued
backup_old.tar890 MBQueued
raw_photos_2023.zip540 MBQueued
dataset_export.csv210 MBQueued
project_notes.txt48 MBQueued
Waiting to start...

Architecture

Four steps. Fully automatic.

SmartCompress FS runs as a self-managing loop. Once started, it requires no interaction unless you choose to intervene via the GUI.

01

Monitor

A background loop polls disk usage every 10 seconds via psutil.disk_usage(). The threshold defaults to 85% but is fully configurable.

02

Scan & Rank

When usage exceeds the threshold, candidate files are collected and sorted by last-access time and size. System files are automatically excluded.

03

Compress

Top-ranked files are compressed with Gzip or Zlib. The original file's access and modification timestamps are recorded before compression begins.

04

Store & Restore

Metadata is persisted to compression_metadata.json. Any compressed file can be restored to its exact original path and timestamp at any time.

Stack

Built with Python.
No unnecessary dependencies.

The entire system runs on Python's standard library plus one external package. No frameworks, no build steps, no overhead.

Python 3
Tkinter
Gzip
Zlib
psutil
json
logging
os  ·  shutil

Get it

Download SmartCompress FS

Packaged as a standalone Windows executable. No Python installation required. Source available on GitHub.

Requires Windows 10 or 11  ·  Python 3.8+ for running from source