image-index-py/README.md

39 lines
2.2 KiB
Markdown
Raw Permalink Normal View History

2022-11-16 10:36:34 +01:00
# image-index
This project is a script which can index and sort files on your pc. You can give every file a title, category, source, tags and content for easier finding later on.
All information is stored inside of an SQLite-database. Two separate tables are used to give aliases to the categories and tags, so that a user can easily change the names without modifying all affected entries.
2023-01-17 18:10:24 +01:00
You can also encrypt all files with AES-CBC.
This project was written and tested on an Arch Linux-based distribution and python 3.10.
2022-11-16 10:36:34 +01:00
2022-11-16 19:30:32 +01:00
## Functions
* add - Add a file and entry to the index
2023-01-17 18:10:24 +01:00
* copy - copies a file from the index to a custom location
2022-11-16 21:01:29 +01:00
* check - check if all files saved in the index exist and aren't faulty
2022-11-16 19:30:32 +01:00
* delete - delete a file and remove the entry
2022-12-05 19:52:07 +01:00
* import - lets you add every file to the index in a chosen directory
2023-01-17 18:10:24 +01:00
* meta - a command to change aliases of categories and tags
2022-11-16 21:01:29 +01:00
* open - open one or more files from the index in the default application (only Linux and Windows)
2023-01-17 18:10:24 +01:00
* replace - replaces a file in the index with another file while keeping the entry
* show - search through the index and show the matches
2023-01-18 09:17:23 +01:00
* stats - shows statistics about the index like number of entries, tags and categories
2022-11-16 19:30:32 +01:00
* update - change a value of an entry in the index or move a file to another category
2023-01-17 18:10:24 +01:00
## Dependencies
* hashlib
* pycryptodomex
* sqlite3
## Downloading
```sh
2023-07-28 17:09:30 +02:00
git clone https://git.marcelsite.com/marcel/image-index-py.git
cd ./image-index-py
```
2022-11-16 10:36:34 +01:00
## Configuration
The top of the file holds some very important variables that need to be looked at by the user:
2022-11-16 10:36:34 +01:00
* ROOT_DIR: The absolute path of where you want to save your files (the directories for the categories will be created there)
2023-01-17 18:10:24 +01:00
* INDEX_FILE: The absolute path of the database file.
* LINUX_APP_STARTER: The linux command which can open a file in the default application. Most distributions use `xdg-open`.
* ENCRYPT: This setting tells the script whether to encrypt the added files by default or not.
2023-02-15 17:11:00 +01:00
* If set to True, the ids of the categories will be randomly generated (fe627ea4-3fd60 instead of category-3fd60) for pretty much zero-knowledge storage on a remote server without access to the database.
* MAX_ITEMS: The maximal amount of entries shown in the selection menu.