aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Riehs <tristan.riehs@inria.fr>2026-02-16 17:51:56 +0100
committerTristan Riehs <tristan.riehs@inria.fr>2026-02-16 17:51:56 +0100
commit5a831f0ba062c403921cd87f30328a895e96a113 (patch)
tree11fcc2093b94f0d18258e11777e0ba0b6d78b3c2
parentfe33952184b105d66865c64308b4ee70a41903e8 (diff)
First draft of README
-rw-r--r--README.org83
1 files changed, 83 insertions, 0 deletions
diff --git a/README.org b/README.org
new file mode 100644
index 0000000..c0fc062
--- /dev/null
+++ b/README.org
@@ -0,0 +1,83 @@
+#+title: Ftag: organize files by giving them tags
+
+* What is Ftag
+
+I have struggled for a long time to properly manage my administrative
+documents. What I mean by /managing/ is:
+- being able to quickly find any file based on what is about (appartment,
+ job...);
+- same based on date;
+- not having to duplicate files (e.g. my car insurance being in the directory
+ =car= as well as =insurance=);
+- have a convenient way of packaging a few of them into an archive to send to
+ someone.
+
+I createed Ftag in order to make the above easier. On top of that, I tried to
+build Ftag in a way that:
+- is command-line based;
+- is composable with standard tools (=grep=, =find=, ...);
+- allows encryption of documents;
+- allows synchronizing the data on multiple machine;
+- allows renaming the files for sending (e.g. add my name at the end of every
+ file name).
+
+* Examples
+
+** Migrating to Ftag
+
+First, initialize Ftag:
+
+#+begin_src console
+$ ftag init
+#+end_src
+
+Second, write all my documents' file names to a temporary file:
+
+#+begin_src console
+$ find ~/paperwork -type f -fprint0 /tmp/files
+#+end_src
+
+Third, give them to =ftag file add= using =xargs= to add them all to the Ftag database:
+
+#+begin_src console
+$ xargs -0 -a /tmp/files ftag file add -i
+#+end_src
+
+Fourth, create a bunch of tags and give files the proper tags (very tedious, but
+this is the only time we will have to do it manually for numerous files):
+
+#+begin_src console
+$ ftag tag add
+[...]
+$ ftag file tag
+[...]
+#+end_src
+
+** Take a look at all my car insurance files
+
+#+begin_src console
+$ ftag query -t car -t insurance
+#+end_src
+
+
+* Installation
+
+#+begin_src console
+$ git clone https://tristanriehs.fr/git/ftag
+$ cd ftag
+$ make
+# make install
+#+end_src
+
+* Getting started
+
+#+begin_src console
+$ ftag init
+$ ftag file add ~/paperwork/my_first_document.pdf
+$ ftag file list
+My First Document
+$ ftag tad add my_first_tag "This is my first tag"
+$ ftag file tag my_first_document my_first_tag
+$ ftag query -t my_first_tag
+My First Document
+#+end_src