Collects your favorite media and organizes them with the hierarchical tag system.
$ yarn && yarn codegen
$ docker compose up -d --build
$ docker compose exec api hoarder migration apply
$ docker buildx bake -f docker-bake.hcl
$ docker run --rm -it ghcr.io/chitoku-k/hoarder/api migration apply
--locale
(LOCALE
): Unicode locale identifier for collation order--log-level
(LOG_LEVEL
): Log level as in RUST_LOG
The following environment variables can be used to configure PostgreSQL connection:
PGHOST
: HostnamePGPORT
: Port numberPGUSER
: UsernamePGPASSWORD
: PasswordPGDATABASE
: Database namePGSSLROOTCERT
: Path to the root CAPGSSLCERT
/PGSSLKEY
: Path to the client certificate and private key in PKCS#8 formatPGSSLMODE
: SSL modePGAPPNAME
: Application name
$ hoarder [serve] [OPTIONS]
The following command line options (or environment variables) can be used to configure API:
--port
(PORT
): Port number (required)--media-root-dir
(MEDIA_ROOT_DIR
): Path to the media directory (required)--media-root-url
(MEDIA_ROOT_URL
): Public URL for media--tls-cert
/--tls-key
(TLS_CERT
/TLS_KEY
): Path to TLS certificate and private key for HTTPS
To show GraphQL schema in SDL (Schema Definition Language):
$ hoarder schema print
To execute database migration:
$ hoarder migration [OPTIONS] (apply | drop | list | revert)
The following environment variables can be used to configure UI:
API_URL
: URL for API (required)PUBLIC_URL
: Public URL for UI (required)BASE_URL
: Base URL for UI (required)
Install cargo-make first in case it's not installed.
$ cargo install cargo-make
Run all tests.
$ cargo make test
Icon made by Freepik from www.flaticon.com