A media management tool
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Julius Riegel baab3a25c7
Merge pull request #26 from Trivernis/feature/rust-migrations
Feature/rust migrations
2 years ago
.github/workflows Add linting to check workflow 3 years ago
mediarepo-api Update dependencies 3 years ago
mediarepo-daemon Switch to new sea orm migrations 2 years ago
mediarepo-ui Update dependencies 3 years ago
scripts Change base image of debug containerfile to alpine 3 years ago
.containerignore Fix build problems with latest tauri build 3 years ago
.deepsource.toml Add deepsource 3 years ago
.gitignore Split the build script tasks into separate files 3 years ago
CONTRIBUTING.md Add contribution guidelines 3 years ago
Containerfile Update container builds 3 years ago
LICENSE Adjust dependency paths 3 years ago
README.md Fix build problems with latest tauri build 3 years ago

README.md

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.

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 page or the AUR.

Arch Linux:

$ 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) and node.js installed. For building the UI the required tauri build tooling needs to be installed as well. Please follow their documentation for setup information. You also need to have a working python 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:

$ ./scripts/check.py --install

Note: this only installs tools that are installable via cargo or npm

All Componens:

$ ./scripts/build.py all

Daemon only:

$ ./scripts/build.py daemon

UI only:

$ ./scripts/build.py ui

Clean the output directory:

$ ./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 for more information.

License

GPL-3