Rugivi
The adult media landscape browser
Install / Use
/learn @pronopython/RugiviREADME

RuGiVi enables you to fly over your image and video collection and view thousands of images and video frames at once. Zoom in and out from one image to small thumbnails with your mousewheel in seconds. All images are grouped as you have them on your disk and arranged in a huge landscape. RuGiVi can work with hundred thousand of images at once.
<div align="center"> <font size="+2">Install for Windows Install for Linux
</font></div>
Screenshots

RuGiVi integrates fully into the Fapel-System, so you can travel trough your collection and tag images as you fly over them!
Fly over thumbnails and zoom in on any image anytime in an instant!
:eggplant: :sweat_drops: Note: All sample images on this page are censored
Image Landscape generation from your directory structure:

Zooming and wandering around:


Double click preview:

Always visible, floating Fapel Tables:

RuGiVi works with images...

...and with videos, which it displays as a set of video still frames in the landscape:

(Everything here is obviously censored ;-) )
Zoom in...

And zoom out

Left doubleclick enables a peepy preview. Every rectangle is one image which you can zoom into. Images within one directory are always placed randomly next to each other in an organic fashion. You also clearly can see different image directories: Ones which contain a mix of different images (random colors) and ones with one photo set (uniform color).

RuGiVi saves all generated thumbnails in a database and can load these on the fly at the next session. Here you can see chunks (rectangular blocks of 32 x 32 pictures) being loaded from thumb database (on this system at around 800-1000 thumbs per second). The pattern like structure between pictures and red empty spots on the right is RuGiVis dynamic screen update mechanism, which favors pattern like update and tearing over broken fps.

You can also export a world map:
World with 75,000 images (1 pixel = 1 image)

World with 700,000 images (1 pixel = 1 image)

Benefits
- Works with hundreds of thousands of images and videos at the same time
- Tested with around 700.000 images (see the world map shown here), that's a RuGiVi Pixel size of 4.600.000 x 4.400.000 pixels or 20.240.000 Megapixels or 10.120.000 Full HD Screens to be scrolled through
- Dynamic view rendering - screen is updated partially when drawing takes more time
- Thumbnails are cached in a database
- Video still frames are cached in a cache directory structure
- Works together with the Fapel-System
- Uses PyGame to render everything
- With some tweaks it should work under MacOS (but was not tested)
Requirements
- Microsoft Windows or Ubuntu Linux (was written on Ubuntu, should work on all big distros). Works probably on MacOS when tweaked
- 8 GB RAM or more
- Python 3
- PIP Python Package Manager
- VLC is recommended for video playback
Installation
Ubuntu Linux Installation
Install python tkinter and pillow
sudo apt-get install python3-tk python3-pil.imagetk
install RuGiVi via pip, run
pip install rugivi
and start RuGiVi
rugivi
RuGiVi will open up its configurator at the first start, see Configure RuGiVi.
Windows Installation
Download and install Python 3: https://www.python.org/downloads/windows/
Open a command window (press Windows+R then type cmd.exe and start it)
Type and run
pip install rugivi
after that start rugivi, in the command window run:
rugivi
RuGiVi will open up its configurator at the first start, see Configure RuGiVi. You can create start menu entries with the configurator.
Configure RuGiVi
After starting rugivi for the first time, you must configure the locations of various files.
If you want to get started and just run RuGiVi, just change the blue entries!

|Setting | Description |
|-----------------|------------------------------------------------------------------------------------|
|Images & videos root directory| This is the root directory of all the pictures and videos you want to explore within RuGiVi |
|Crawler World DB File | This is the database file the "world" (the position of all files on the screen) is saved to|
|Thumb DB File| The Database containing all thumbnails. This can be several GB in size!|
|Enable video crawling|When "true", RuGiVi will also parse video files|
|Video still cache directory| The directory where RuGiVi will save video still frames as jpg images|
|Play video with VLC| When "true", RuGiVi will try to use VLC as the video player when opening a video by pressing n. Otherwise it will use the system default video player.|
|Reverse Scroll Wheel Zoom| Changes the direction for zooming. Set it "true" when using a trackpad|
| Status font size | Font size of the grey status area|
| FapTable parent dirs | See FapTables |
| FapTable single dirs | See FapTables |
| create start menu entries | Check if you want to have RuGiVi as icon in your start menu |
:cherries: You must use a new World DB File or delete the old one when changing root directory
:cherries: rugivi_configurator migrates your old config file when you upgrade from a previous version of RuGiVi. Make sure to press "Apply and exit" even when you do not change settings yourself!
Make sure your database files are placed on a SSD drive!
To open the configurator again later, open a terminal / command window (under Windows press Windows+R then type cmd.exe and start it) and run
rugivi_configurator
Start RuGiVi
You can start RuGiVi via the start menu entry.

or via console / command window, just run:
rugivi

RuGiVi opens with an additional terminal window showing some log.
You now want to maximise the main window.
You can toggle the grey info box by pressing i repeatly.
Rugivi will now recursivly travel trough your directory tree and gather all images with all thumbs.
You can watch this process or start traveling through the images world.
Commands
|Key/Button |Action | |-----------------|------------------------------------------------------------------------------------| |Left Click |Select an Image | |Right Click |Center clicked area | |Hold Left |Move world | |Double Click Left|Open / Close Preview when zoomed out | |Wheel |Zoom in / out | |Click Wheel |Fapel Table Edit Mode on / off | |i |Toggle grey information box | |1-7 |Zoom levels | |0 |Zoom fit | |b |Go backward in history to previous selection | |f |Go forward in history to next selection | |j |Jump randomly | |n |Open image with system image viewer; Open video with system video player of VLC | |t |Call Fapel-System Tagger on selection| |s |Call Fapel-System Set on selection | |up / down |Open and go through Fapel Table rows | |left / right |Go through Fapel Tables of one row | |g |Open Dialog to go to a spot by coordinates x,y | |c |Open information dialog | |o |Pause image server (troubleshooting) | |p |Pause crawler (troubleshooting) | |e |Generate and export world map as png file |
To make t and s work, you must have the fapel-system installed and make sure, that the correct python executable is set in RuGiVis config file (this should work out of the box for Ubuntu and Windows but I could not check all possibilities).
Quitting RuGiVi
Close RuGiVi by closing the main window ("x"). If it works and all databases and jobs can be successfully exited, the window closes after a few seconds and the commandline returns to the prompt.
Sometimes RuGiVi hangs up during shutdown (a known bug). If so, please go into the command line and kill RuGiVi with Ctrl+C.
Video handling
If you have video crawling enabled through rugivi_configurator, RuGiVi will parse video files and add them as a set of video
Related Skills
notion
341.6kNotion API for creating and managing pages, databases, and blocks.
feishu-drive
341.6k|
things-mac
341.6kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
341.6kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
