thalassa

configuration

you can configure thalassa by editing two configuration files

thalassa_site_config.json controls the front-end and some of its values can be changed from the web config menu

it's located in the public directory thalassa is being served from

thalassa_site_config.json
field description
site_name The site name used in opengraph and twitter cards
site_title The actual title appended to site pages and also used in some opengraph and twitter cards
site_image_uri The image used for generic site pages in opengraph and twitter cards

Leave blank to use persephone logo
site_color The theme color is changed automatically by javascript to match the background color of the current css theme, but the initial value is used in some social media cards (such as discord's stripe color) so you can set that here
site_theme The default theme of the site automatically applied for anyone who hasn't chosen a preferred theme
site_favicon_ico_uri You can override the ico favicon with any uri that points to an ico file with this.

Leave blank to use the ico favicon at static/favicon.ico
site_favicon_png_uri You can override the png favicon with any uri that points to a png file with this

Leave blank to use the png favicon at static/favicon.png
site_language The language code to tag the site as
site_topmenu_home_uri The destination when clicking Home in the topmenu

Leaving this blank will use thalassa's page system and display the contents of custom/home.html
site_topmenu_search_text The text value of the Search button in the topmenu

By default this is "Gallery"
site_topmenu_store_files_text The text value of the Store Files button in the topmenu

By default this is "Upload"
default_filtered_tags Tags which should be filtered by default for new users (separated by #)
default_hide_filtered Whether filtered tags should be hidden entirely from search results by default for new users
admin_name Your handle
default_publish_time_new_files The default value of the publish time field in the upload form

By default this is +5m, which will postdate the publish time new files to 5 minutes from their time of upload (see thalassa's operator help page for datetime formats), giving you time to tag them before they go live
default_tags_new_files The default value of the tags field in the upload form

For most artists using this as an archive of work you'll want to set this to #author:your_handle
default_tag_filenames_new_files The default value of the checkbox in the upload form for whether or not to scrape filenames from uploaded files and add them as #filename:{filename} tags
default_files_per_page The default number of results per search page
ffprobe_path The absolute path to the ffprobe binary on your system

Leave blank for none
ffmpeg_path The absolute path to the ffmpeg binary on your system

Leave blank for none
python3_path The location of python3 (this is automatically set by the web installer)
thalassa_cli_path The location of thalassa_cli.py (this is automatically set by the web installer)
thalassa_config_path The location of the thalassa core config file (this is automatically set by the web installer)
additional_topmenu_items You can add additional topmenu items here in the form of {"id": "ITEM_ID", "text": "BUTTON_TEXT", "destination": "DESTINATION_URI"}

The IDs "newsletter", "help", and "patreon" are already styled with icons at narrow widths, but if you're making other custom topmenu items you may need to style them in custom/style.css

(remember to put a comma after } between each item, but not after the last item)
clutter_tags Any tags starting with these values won't be included in search suggestions or show up in the tags this page block
static_uri If you are serving the static files directory from a different domain or are redirecting it in some way, you can put the desired uri here
files_uri If you are serving the files directory from a different domain or are redirecting it in some way, you can put the desired uri here
thalassa_uri If you are serving the main thalassa directory from a different domain or are redirecting it in some way, you can put the desired uri here
cookie_name The cookie name to store your local authentication token as

(if you have multiple thalassa instances on the same domain you should change this to something unique for each of them)
tag_suggestions_autogeneration_age_seconds How often to automatically generate tag suggestions

(you can always generate them manually by going to Admin > Tags > Generate tag suggestions)
expose_tags Whether to display and allow searching by tags
require_auth Require signing in before accessing search or view pages
text_opengraph_character_limit How many characters to display for text files on social media cards
feed_entries Number of items to show in the Atom feed (by default this is 64)
feed_category Category to display for the Atom feed (by default this is "art")

thalassa_config.json controls thalassa core and usually won't need to be changed after web install

it's located in the private directory specified by thalassa_config_path in thalassa_site_config.json

thalassa_config.json
field description
default_files_per_page
sqlite_path
ffprobe_path
ffmpeg_path
database_file_path
log_file_path
enable_log
verbose_log
generate_thumbnails Whether or not to generate thumbnails
thumbnail_format "jpg" or "webp"
thumbnail_webp_quality FFmpeg webp quality to use for thumbnails

The range of values is 0 to 100 (0 being the worst quality)
summary_jpg_quality FFmpeg jpg quality to use for thumbnails

The range of values is 2 to 31 (31 being the worst quality)
thumbnail_edge When creating thumbnails scale down the image or video file proportionally so that it's long edge is this size
generate_thumbnail_video_clips Whether or not to generate video clips to use for thumbnail hover previews
thumbnail_video_clip_webm_quality FFmpeg webm quality to use for thumbnail video clips

The range of values is 0 to 51 (51 being the worst quality)
thumbnail_video_clip_duration_ms The duration of the video clip cut from the middle of videos to use for thumbnail hover previews
generate_summaries Whether or not to generate resized versions of images for the view page
summary_filesize_threshold_bytes How large an image file must be before creating a resized version for the view page
summary_format "webp" or "jpg"
summary_webp_quality FFmpeg webp quality to use for summaries

The range of values is 0 to 100 (0 being the worst quality)
summary_jpg_quality FFmpeg jpg quality to use for summaries

The range of values is 2 to 31 (31 being the worst quality)
summary_edge The edge sizes of summaries to generate for images
summary_reencode_non_websafe_video (Currently not active) Whether or not to reencode non-websafe video into a file that is viewable in the browser
files_directory_path The path where file originals, summaries, and thumbnails are stored
pass_hash_file_path The path to the hashed primary pass (this is automatically set by the web installer)
tokens_file_path The path to the tokens file (this is automatically set by the web installer)