// the take
filer.js wraps the old HTML5 Filesystem API with UNIX-style methods (cp, mv, ls, mkdir) so JS developers don't have to deal with the native API's verbose callback-based Entry objects directly. It's aimed at web apps from the early 2010s that needed sandboxed client-side file storage in Chrome.
The UNIX naming convention is genuinely a nice bit of API design - cp/mv/rm/ls map cleanly onto what the underlying FileSystem API does, and it lowers the learning curve for anyone who's done file I/O before. It accepts paths, filesystem: URLs, or Entry objects interchangeably across most methods, which is flexible. It ships a reasonable QUnit test suite.
The HTML5 Filesystem API it wraps was never standardized, was deprecated by Chrome, and has been removed from Firefox, Safari, and Edge for years - this library only ever worked in Chrome and that window has closed further since. No commits since 2019, so it's abandoned. The entire API surface is callback-based with separate success/error callback arguments (no promises, no async/await), which is painful to use in any modern codebase. There's no TypeScript definitions, and adopting this today means building on an API that's functionally dead rather than a maintenance risk you could fix yourself.
We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →