Skip to content

hooya-network/hooya

Repository files navigation

hooya

P2P booru. It associates images and videos with tag metadata.

This image, itself, is hosted with HooYa.

Longer discussion on what boorus are and on the HooYa vision is at wesl.ee/HooYa.

Components

  • hooyad - Core daemon for file storage. Handles P2P connectivity
  • hooya-web-proxy - HTTP proxy server that provides REST API access to hooyad for clients like hooya-web-ui and hooya-client
  • hooya-web-ui - Next.js web interface for browsing and managing files
  • hooya-client - CLI client for interacting with hooyad. Probably deprecated soon because web-ui is just better.
  • hooya-gtk - GTK desktop application. Very dead. Deader than the CLI client.
  • proto - Protocol buffer definitions for gRPC communication

Installation

Use nix develop to boot into a dev shell:

git clone --recurse-submodules git@github.com:hooya-network/hooya.git
cd hooya
nix develop
cargo build --release

For the web UI (separate repository):

git clone git@github.com:hooya-network/hooya-web-ui.git
cd hooya-web-ui
nix develop
npm i
npm run dev
# or npm run build

See the hooya-web-ui README for detailed setup instructions.

Running

Core Services

Start the core daemon:

./target/release/hooyad

Note: Secure access to the gRPC control port (TCP 8531) otherwise anyone can connect and upload anything to your instance.

Start the web proxy

./target/release/hooya-web-proxy

Web Interface

Start the web UI development server (hooya-web-ui):

cd ../hooya-web-ui
npm run dev

The web interface will be available at http://localhost:3000 and connects to the web proxy on port 8532.

Deploy

Production deployment examples are available in the /deploy directory:

  • Docker Compose: Containerized deployment with pre-built images
  • Kubernetes: Kubernetes manifests for cluster deployment
  • systemd: systemd service files for Linux systems

Each deployment method includes both the core hooya services and the web UI.

License

MIT License (available in the source tree as /LICENSE)

About

Local booru w P2P consensus

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages