Skip to content

Local-first library management for your files

License

Notifications You must be signed in to change notification settings

inseven/folders

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Folders

build

Local-first library management for your files

Platforms

macOS

Linux

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.

Development

Dependencies

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

Documentation

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