Skip to content

DoThatKarma/filesporger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

FileSporger 🔍

A simple file change tracker with a browser-based GUI (Developed for Linux. Might work in Windows too)
FileSporger scans a directory, records the modification timestamps of all files and subdirectories, and lets you compare two scans to see exactly what changed between them.

Zero dependencies — runs on pure Python 3 standard library. No pip install needed.

Python License Platform


Why?

I made this simple tool because iam pretty new to using github and iam working on a pretty big project that is based on another repo which recently has had big updates(upstream) so i totally lost control over which file was edited, what was changed, what do i have to change for it to keep working and so on, this makes it all a lot easier. There is probably already tools for this, but this is just really simple and does just what it says it does!

What does it do?

When you maintain a fork of an open source project and pull in upstream changes using "keep their version" during a merge, Git replaces your files silently. You're left wondering:

"Which files did they actually change? What do I need to review and re-apply my customizations to?"

Open source projects often touch dozens of files at different times, making timestamps inconsistent and hard to compare manually. FileSporger solves this by taking a before snapshot, letting you do your merge, then taking an after snapshot — and showing you a clear, filterable list of exactly what changed.


Features

  • 📸 Two-scan workflow — scan before and after any operation
  • 🔍 Compare scans — see modified, added, and deleted files at a glance
  • 💾 Save & load scans — store snapshots as JSON and reuse them across sessions
  • 🗂️ Native folder picker — uses your OS file dialog (via tkinter)
  • ✏️ Inline diff viewer — see line-by-line changes for text files (opt-in)
  • 🔎 Filter & search — filter by status (modified / added / deleted) or search by filename
  • 🌙 Dark & light theme — toggle in the top right corner
  • No installation — just Python 3, nothing else

Quick Start

# Clone or download filesporger.py, then simply run:
python3 filesporger.py

Opens automatically in your browser at http://localhost:5757.
Press CTRL+C in the terminal to stop.

Requirements: Python 3.8+ with tkinter (included by default on most Linux distros).
If tkinter is missing:

sudo apt install python3-tk

Typical Workflow (Git Fork Use Case)

  1. Before pulling upstream changes, open FileSporger
  2. Select your project folder → click ⚡ Skann nå in Scan 1
  3. Run your git merge, git pull, or any other operation
  4. Select the same folder in Scan 2 → click ⚡ Skann nå
  5. Click 🔍 Compare scans → review what changed
  6. Use the "Kun endrede" filter to focus only on modified files

Optional: Line-by-line diff

Check "Lagre filinnhold for diff-visning" before scanning. After comparing, click ⬛ Vis diff on any modified text file to see exactly what lines changed.


Saving Scans

You can save a scan to a .json file and reload it later.
This is useful when you want to:

  • Compare across multiple sessions
  • Share a snapshot with a teammate
  • Keep a record of a project's state at a specific point in time

Screenshot

(Add screenshot here)


License

MIT — see LICENSE


Contributing

Pull requests welcome! Some ideas for improvements:

  • Git integration (auto-detect repo, show git diff)
  • Ignore patterns (.gitignore support)
  • Export changed file list to clipboard or text file
  • Windows/macOS support

About

Filesporger - A simple tool to keep track of file edits after updating repos from upstream e.g

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages