gitwtfhub

wtf is bbfs?

ajeetdsouza/bbfs — explained in plain English

Analysis updated 2026-08-03 · repo last pushed 2019-08-17

1HaskellAudience · developerComplexity · 4/5DormantSetup · moderate

TL;DR

A virtual file system layer that logs every file action (open, read, save) and forwards it to a real hidden folder. Built in Haskell as an experiment in file-watching infrastructure.

Mindmap

mindmap
  root((repo))
    What it does
      Watches all file actions
      Acts as middleman layer
      Logs every operation
    Tech stack
      Haskell
      Fuse filesystem
    Use cases
      Debug file interactions
      Log app file access
    Audience
      Developers
      Filesystem tooling
    Project nature
      Experimental
      Haskell ecosystem test

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Debug an app that crashes when saving files by routing its activity through the watching folder to see exactly what it touches.

REASON 2

Log which files a program reads or writes during a session for troubleshooting or auditing.

REASON 3

Understand how an unfamiliar application interacts with the filesystem by observing its file operations in real time.

What's in the stack?

HaskellFUSE

How it stacks up

ajeetdsouza/bbfspsibi/odbc-issue-49bobymicroby/boby-alga-toolkit
Stars11
LanguageHaskellHaskellHaskell
Last pushed2019-08-172022-04-262021-02-10
MaintenanceDormantDormantDormant
Setup difficultymoderatemoderateeasy
Complexity4/51/52/5
Audiencedeveloperdeveloperpm founder

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Requires FUSE support on your OS and a working Haskell build environment, which can be tricky to configure.

No license information is provided in the repository, so usage rights are unclear.

Wtf does this do

BBFS, or the "Big Brother File System," is a tool that watches everything that happens in a folder on your computer. It sits between you and your files, acting as a middleman that records every action, then passes that action along to the real folder underneath. The name is a nod to the idea that it is always watching. Here is how it works at a high level. When you open, read, or save a file, you normally interact directly with your computer's storage. This tool creates a fake or "virtual" folder that looks and behaves exactly like a normal one. When you interact with this virtual folder, it notes exactly what you are trying to do, and then quietly performs that exact same action on the real, hidden folder behind the scenes. You see your files as usual, but the system gets a chance to observe the traffic flowing through it. This kind of tool is primarily useful for developers who want to understand or debug how a program interacts with files. For example, if you have an app that keeps crashing when it tries to save a document, a developer could route that app's activity through this watching folder. Instead of guessing what went wrong, the developer gets a clear log of exactly which files the app touched and what it tried to do with them. What is notable about this project is how it was built. It is written in Haskell, a programming language known for being mathematically strict and reliable. The creator wrote it specifically to test and explore how well Haskell can connect to the underlying file-watching technology. Because the ecosystem for this specific task in Haskell is still maturing, the project is as much an experiment in programming infrastructure as it is a practical utility.

Yoink these prompts

Prompt 1
Help me set up BBFS, the Big Brother File System, on my Linux machine so I can mount a virtual folder that logs all file activity and forwards it to a real directory underneath.
Prompt 2
I have a Haskell application that keeps crashing when it tries to save a document. How can I route its file access through BBFS to get a detailed log of every file operation it performs?
Prompt 3
Walk me through how FUSE-based filesystems like BBFS work in Haskell. I want to understand how a virtual folder can intercept and log file operations before passing them to a real backend folder.
Prompt 4
I cloned the BBFS repository but I'm not sure how to compile and run it. Guide me through the build process and how to mount a watched folder using this Haskell FUSE experiment.

Frequently asked questions

wtf is bbfs?

A virtual file system layer that logs every file action (open, read, save) and forwards it to a real hidden folder. Built in Haskell as an experiment in file-watching infrastructure.

What language is bbfs written in?

Mainly Haskell. The stack also includes Haskell, FUSE.

Is bbfs actively maintained?

Dormant — no commits in 2+ years (last push 2019-08-17).

What license does bbfs use?

No license information is provided in the repository, so usage rights are unclear.

How hard is bbfs to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is bbfs for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.