hooYa! is a community-driven file tagger with support for lots of media types. Users contribute tag associations, which describe each file. Users can also contribute a number of files each day
You can check out the Scrin mothership of hooYa! at https://bm.howler.space/hub/hooYa
- An HTTP Server
-
hooYa! has been tested with lighttp and Apache, but any web server with PHP and xsendfile support will work
- PHP
-
Make sure your webserver can interpret and serve PHP files
- mod_xsendfile
-
mod_xsendfile enables the sending of large files easily. You can grab an apache module here, but several implementations of this module exist for numerous other web servers
- MySQL (MariaDB)
-
Storing tags and metadata about indexed files
- Appropriate MySQL Module for PHP5
-
For apache, this is
php5-mysql
- bm-common
-
Common stylesheets and authentication
- Imagemagick
-
Generating image thumbnails
- ffmpegthumbnailer
-
Generating video thumbnails
- Perl
-
You likely already have Perl5 installed, but in case you do not it is easily available for many operating systems
- DBI
-
Perl5 database interface module. It is used for any perl scripts that run on the site, like the installation tools or the 'daily dump' for hooYa. This can be installed from CPAN by running
cpan -i DBI
as root, or per-user if you lack those permissions or want a simply local install - DBD::mysql
-
Perl5 module for interfacing with MySQL tables through DBI. Easily installed from CPAN by running
cpan -i DBD::mysql
as root, or per-user if you lack those permissions or want a simply local install - Digest::MD5::File
-
Perl5 module for calculating MD5 hashes of a file
Follow the set up instructions for bm-common; this project provides the common stylsheets and authentication for the website
Once you've installed bm-common correctly, install hooYa! by running git clone https://bm.howler.space/git/bigmike-hooYa.git
Then, cp includes/config.template.php includes/config.php
and edit the configuration file to your taste
Lastly, run bin/install
to create the hooYa! SQL structure
- File Tagging
-
Associative namespaces like series > yuyushiki Tags are handled by MySQL
- Per-deployment Configuration
-
Per-deployment settings are defined in includes/config.php
- Thumbnailing
-
Dynamic generation of thumbnails; cached
- Tag Aliases
-
Instead of typing puella magi madoka magica every time, I can just type pmmm. How easy!
- Extensible Media Classes
-
Some example classes are included, but it is trivial to index other media (PDFs, presentations etc.)
Modified BSD License (see docs/LICENSE
)
Bother me on IRC in #bigtown on howler.space:6667
or by mail at <yumi@howler.space>