Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/Trivernis/mediarepo

A media management tool
https://github.com/Trivernis/mediarepo

image-viewer media-manager rust tauri

Last synced: 25 days ago
JSON representation

A media management tool

Awesome Lists containing this project

README

        


mediarepo
















- - -

> Mediarepo is a tool for managing media files.
It works similar to image boards (boorus) as it allows one to assign tags to media entries and
search for entries by using those tags.

![](https://mediarepo.trivernis.dev/assets/images/screenshot-1.png)

## Features

### Implemented

- management of multiple repositories
- running repository daemons on startup or in the background
- importing files from the file system
- assigning tags to files
- searching for files using tags and properties
- sorting files by properties and tag namespaces

### Planned

- tag aliases and implications
- file collections
- importing files from URLs
- tag lookup using SauceNao and IQDB
- synchronisation between clients

## Installation

In order to use mediarepo, the mediarepo daemon and UI application need to be installed.
Both can be downloaded from the [Releases](https://github.com/Trivernis/mediarepo/releases) page or the AUR.

Arch Linux:
```sh
$ yay -S mediarepo-daemon mediarepo
```

When installing manually the `mediarepo-daemon` binary needs to be accessible in the `PATH` variable.

## Building

### Prerequisites

You need to have a working rust toolchain (e.g. via [rustup](https://rustup.rs/)) and [node.js](https://nodejs.org) installed.
For building the UI the required tauri build tooling needs to be installed as well. Please follow [their documentation](https://tauri.studio/docs/getting-started/prerequisites) for setup information.
You also need to have a working [python](https://www.python.org/) installation on your system.

### Building mediarepo

After all required dependencies are installed and tools are accessible in the `PATH`, you can build the project like follows:

Check (and install) required tooling:
```sh
$ ./scripts/check.py --install
```
> Note: this only installs tools that are installable via cargo or npm

All Componens:
```sh
$ ./scripts/build.py all
```

Daemon only:
```sh
$ ./scripts/build.py daemon
```

UI only:
```sh
$ ./scripts/build.py ui
```

Clean the output directory:
```sh
$ ./scripts/clean.py
```

After building the `out` directory contains all the built binaries and bundles.

### Test Builds

For test builds the `Containerfile` in this repository can be used. This way no build dependencies need to be installed on the system. The Containerfile doesn't provide any artifacts and can only be used for validation.

## Usage and Further Information

Please consult the [official website](https://mediarepo.trivernis.dev) for more information.

## License

GPL-3