Local-first library management for your files
Right now, this is simply a proof-of-concept reimplementation using Rust and GTK.
Since spending more time using Fedora and GNOME, I've found myself missing Fileaway and Folders, my file management apps for macOS and iOS. This repository is therefore an experiment to see how hard it would be to reimplement the file observing core of those apps in Rust to be shared across both Apple-native and Linux-native UI toolkits. It's very much a learning exercise and you probably don't want to use this code for... anything in its current form. Not least because it's the first time I'm writing Rust and GTK. If it evolves into something more functional, I'll likely turn it into a dedicated library, or fold it into Fileaway or Rust.
Folders uses mise-en-place and the .tool-versions
file to manage development tools dependencies. After installing mise, you can install the necessary tooling as follows:
mise install
Some of the build script configure a local directory of dependencies in .local
. You can install these in preparation for running full builds as follows:
scripts/install-dependencies.sh
The project website is built using a combination of Jekyll and a couple of custom bash scripts to build-out the release pages.
You can run a local Jekyll server for development as follows (see Dependencies for details on how to install the necessary tools dependencies):
cd docs
bundle exec jekyll serve --watch