DJ Majumdar @deepjoy.com · 10/03/2026Ran Shoebox against a directory. 106K files, 71 GB. It found 18,847 duplicates hiding in 581 folders. 8.2 GB reclaimable. Here's what that looks like in a browser. Open source, MIT licensed. #buildinpublic #rustlang #selfhosted #selfhosting 170
DJ Majumdar @deepjoy.com · 26/02/2026Lesson from three weeks of building: the most valuable thing about S3 isn't S3. It's that every tool already speaks it. Build to standard and rclone, Cyberduck, boto3, the AWS CLI all work on day one. No plugins. No integrations. Just the protocol. #buildinpublic #rustlang #selfhosted #selfhosting 241
DJ Majumdar @deepjoy.com · 24/02/2026Update on the local S3 server: filesystem scanner landed. Point it at a directory, it walks every file, indexes it, and watches for changes. Drop a file in the folder, it shows up in S3 automatically. No upload step. Good progress in two weeks. #buildinpublic #rustlang #selfhosted #selfhosting 261
DJ Majumdar @deepjoy.com · 19/02/2026Building an S3-compatible server for local filesystems. Point it at a directory, get an S3 endpoint. Files stay where they are. Started this to find duplicate photos. Realized I'm building something bigger. #buildinpublic #rustlang #selfhosted #selfhosting 372
DJ Majumdar @deepjoy.com · 17/02/2026Week 1 update on the photo project. It works. `shoebox ~/Photos` - that's it. Starts an S3 server. No config files, no YAML, no setup wizard. 100
DJ Majumdar @deepjoy.com · 12/02/202620 years of photos. Started on a pile of external hard drives, 250GB, 500GB, 1TB. Each one a snapshot of a different era. Now they're all on one NAS. The drives are gone. The mess remains. 120