2 unstable releases
0.2.0 | Oct 25, 2024 |
---|---|
0.1.0 | Mar 23, 2024 |
#75 in Multimedia
115 downloads per month
9.5MB
2K
SLoC
🔖TAGanrog
A personal tagging system and a search engine for your media library.
Table Of Contents
About the Project
In the digital age, where the quantity of files and data we handle is enormous, finding the exact file you need can be like looking for a needle in a haystack. Taganrog is designed to solve this problem by allowing you to tag your files with custom tags and then search through them as easily as you would search the web using Google. Whether it's documents, images, videos, or any other file type, Taganrog brings order to chaos, making your digital life more organized and efficient.
Demo
Features
- ✨ Google-like UI: Search your files in a neat, Google-like search bar.
- ⚡ Blazingly Fast: tags autocompletion, searching media files, adding/removing tags, everything works within milliseconds(!)
- 💾 Local Storage: All your tags and files are stored locally on your machine. There is NO server.
- 🖥️ CLI: Taganrog is also a CLI tool that allows you to manage your tags and files from the command line.
- 📦 Portable: Taganrog is a single binary (that includes both - the CLI and the desktop app), that you can run on any platform without any dependencies.
- 📤 Exportable: The entire DB is just a single JSON file that is human-readable and can be easily exported to other systems.
Built With
This project was built using the following open-source frameworks/libraries:
- for desktop app: Tauri
- for UI templating: Axum + Askama
- for CLI: Clap
- for DB: append-only JSON file (using serde)
Installation
There are four ways to install Taganrog:
-
Using Cargo:
- If you have Rust installed, you can install Taganrog using Cargo:
cargo install taganrog
-
Building from source:
- Clone the repo and build the project using Cargo:
git clone https://github.com/darkcodi/taganrog.git cd taganrog cargo build --release
- The binary will be available at
target/release/taganrog
- [Linux only] You can also install the binary to your system using:
sudo cp target/release/taganrog /usr/local/bin
- [Windows only] You can also install the binary to your system by adding the
target\release
directory to your PATH.
-
[COMING SOON] Using the pre-built binaries:
- Download the latest binary from the releases page and run it.
Usage
CLI
Taganrog can be used as a CLI tool to manage your tags and files. Here are some of the available commands:
taganrog tag <file> <tag1> [tag2 ...]
: Tag a file with one or more tags.taganrog untag <file> <tag1> [tag2 ...]
: Remove one or more tags from a file.taganrog list [tag]
: List all tags that start with a specific prefix. If no prefix is provided, all tags are listed.taganrog search <tag1> [tag2 ...]
: Search for files with a specific tag or tags.
Desktop
If you launch Taganrog without any arguments, it will start a desktop app that you can use to manage your tags and files. Here are some of the available features:
- Search: Enter tags in the search bar to search for files that have those tags.
- Tag new files: Click on the
Plus
button in the top right corner and select a file(s) to tag. - Add/Delete Tags: Click on some media file and then add/remove tags to it on the right-side panel.
- Delete Files: Open a media by clicking it and press the
Delete
button on the right-side pane to delete it. - Tags Cloud: Click on the
Cloud
button in the top right corner to see a cloud of your top 100 used tags.
License
Distributed under the MIT License. See LICENSE for more information.
Dependencies
~31–77MB
~1.5M SLoC