Work in Progress: This wiki is severely lacking & possibly incorrect and still in development. The site is open source — assistance and pull requests are welcome!

Settings

Customize every aspect of Kable Launcher to match your preferences.

The Settings panel is your control center for customizing Kable Launcher. All settings are automatically saved and persist across launcher restarts. Access settings by clicking the gear icon in the navigation sidebar.

Settings are stored in JSON format and can be exported/imported for backup or sharing between computers. Look for the import/export buttons in the settings panel.

General Settings

These settings control the fundamental behavior of Kable Launcher, including Java configuration, file paths, update behavior, and what happens when you launch, close, or crash Minecraft.

SettingTypeDefaultDescription
java_pathString (path)Auto-detectPath to Java executable. Leave empty for auto-detection. Required: Java 8+ for old versions, Java 25+ for modern Minecraft.
game_directoryString (path)Auto-detectRoot directory for Minecraft files. Each installation can override this. Default: %APPDATA%\.minecraft (Windows).
auto_update_launcherBooleantrueAutomatically check for and download launcher updates. Requires update_mode to control when updates apply.
update_modeEnumon_confirminstant: Apply immediately | on_restart: Next launch | on_confirm: Ask user each time
on_game_launchEnumopen_logsAction when starting Minecraft: keep_open | exit | minimize | open_logs | ask
on_game_closeEnumopen_homeAction when Minecraft closes normally: open_logs | open_home | exit | minimize | ask
on_game_crashEnumopen_logsAction when Minecraft crashes: restart | open_logs | open_home | exit | minimize | ask
show_adsBooleanfalseDisplay advertisements in the launcher. Ads support development while keeping Kable free.

The ask option for launch behaviors will prompt you each time, perfect for users who want flexibility based on context.

Appearance Settings

Make Kable look exactly how you want. These settings control colors, spacing, sidebar width, icons, and more. Changes apply instantly without restarting the launcher.

SettingTypeDefaultDescription
themeEnumdarklight | dark | system (matches OS theme)
selected_css_themeStringdefaultName of active CSS theme file. Use "default" for built-in theme or specify custom CSS filename.
languageStringenInterface language code (e.g., "en", "de", "fr", "es"). Contribute translations on GitHub!
extra_spacingNumber0Additional UI padding in pixels. Increase for touch-friendly spacing, decrease for compact layouts. Range: -10 to 50.
sidebar_widthNumber250Navigation sidebar width in pixels. Wider shows full names, narrower saves space. Range: 150-400.
selected_icon_templateStringemojiIcon pack name for installation icons. "emoji" is built-in, others can be downloaded.
icon_settingsJSON Object{}Advanced JSON configuration for icon appearance. Edit directly for pixel-perfect customization.

Community themes and icon packs can be found on GitHub. Drop CSS files into the themes folder and icon zips into the icons folder!

Sound Settings

Kable features a rich audio experience with UI sound effects and background music. All sound settings are nested under appearance.sound in the configuration.

SettingTypeDefaultDescription
enabledBooleantrueMaster toggle for all UI sound effects. Music is controlled separately.
music_enabledBooleantrueEnable or disable background music while using the launcher.
master_volumeNumber50Overall volume for all launcher audio (0-100). Affects both sounds and music.
sound_volumeNumber50Volume for UI sound effects only (0-100). Plays on button clicks, hovers, notifications.
music_volumeNumber50Volume for background music only (0-100). Independent from sound effects.
selected_soundpackStringdefaultName of active soundpack. "default" uses built-in sounds. Import custom packs as ZIP files.

Create custom soundpacks by organizing audio files in the correct structure. Check the soundpacks folder for examples!

Logging Settings

Logging settings determine how Kable saves, displays, and manages diagnostic logs. Essential for troubleshooting crashes or reporting bugs to developers.

SettingTypeDefaultDescription
show_logs_page_in_navBooleantrueShow the Logs page in sidebar navigation. Hide to declutter if you rarely use logs.
enable_persistent_loggingBooleanfalseSave logs to disk for later review. Stored in launcher data directory.
enable_log_compressionBooleantrueGZIP-compress old log files to save disk space. Compressed logs remain readable.
log_file_size_limit_mbNumber | "disabled"10Maximum log file size in MB before rotation. Set to "disabled" for unlimited.
log_retention_daysNumber | "disabled"30Auto-delete logs older than this many days. "disabled" keeps logs forever.
merge_log_tabsBooleanfalseCombine launcher and game logs into single view instead of separate tabs.
default_log_levelsArray<String>["error"]Visible log levels: debug, info, warn, error. Example: ["info", "warn", "error"]
max_memory_logsNumber5000Maximum log entries kept in RAM. Higher = scroll further back but use more memory.
enable_dedupeBooleantrueRemove consecutive duplicate log messages. Reduces spam from repeated errors.
dedupe_window_sizeNumber50Number of recent log entries to check for duplicates. Higher catches more but uses slightly more CPU.

Unlimited log retention can fill your disk over time! Set reasonable limits or periodically clean the logs folder manually.

Network Settings

Network settings control how Kable downloads mods, resource packs, game files, and other content from the internet. Tune these for your connection speed.

SettingTypeDefaultDescription
parallel_downloadsNumber3Number of simultaneous downloads. Fast connections: 6-8. Slow connections: 2-4. Range: 1-16.
connection_timeoutNumber30Network request timeout in seconds. Increase for slow connections, decrease for faster failure detection.
download_speed_limitNumber | "unlimited""unlimited"Bandwidth throttle in MB/s. Set a number to limit or "unlimited" for max speed.

If downloads fail frequently, try increasing connection_timeout to 60 seconds and reducing parallel_downloads to 2.

Content Settings

Content settings control automatic world backups and whether to use shared or per-installation folders for mods and resource packs. These settings affect how content is organized on disk.

SettingTypeDefaultDescription
auto_backup_worldsBooleanfalseAutomatically create world backups before launching Minecraft. Backups stored in backups/ folder.
max_world_backupsNumber | "disabled"5Maximum backup copies per world. Oldest deleted when limit reached. "disabled" keeps all backups.
use_per_installation_mods_folderBooleanfalseEach installation gets its own mods/ folder instead of sharing the global one.
use_per_installation_resource_packsBooleanfalseEach installation gets its own resourcepacks/ folder instead of sharing the global one.

Per-installation folders prevent mod conflicts but use more disk space. Shared folders save space but require manual mod management for different Minecraft versions.

Advanced Settings

Advanced settings unlock experimental features, debugging tools, and fine-grained control over launcher internals. Only modify these if you know what you're doing!

SettingTypeDefaultDescription
enable_experimental_featuresBooleanfalseEnable beta/experimental functionality. May be unstable. Great for testing and providing feedback!
check_nightly_updatesBooleanfalseCheck for pre-release nightly builds instead of stable releases. Get newest features first (with potential bugs).
default_memoryNumber2048Default RAM allocation in MB for new installations. Can be overridden per-installation. Modern modpacks: 4096-8192 MB.
separate_logs_windowBooleanfalseOpen game logs in separate window instead of integrated tab. Useful for multi-monitor setups.
auto_save_intervalNumber30Auto-save launcher state every N seconds. 0 disables auto-save. Prevents data loss on crashes.
show_advanced_pageBooleanfalseShow the Advanced page in sidebar navigation. Contains symlink management and debug tools.
extraJSON Object{}Free-form JSON object for custom key-value pairs. Used by plugins and extensions.

Experimental features can break at any time! Always keep stable backups of your installations before enabling experimental mode.

Miscellaneous Settings

Miscellaneous settings control window chrome and authentication preferences. These are less commonly modified but still important for specific use cases.

SettingTypeDefaultDescription
use_titlebarBooleantrueUse native OS window titlebar. Disable for frameless window (custom titlebar). Tauri-specific setting.
auth_preferenceEnumcodecode: Browser-based OAuth flow | device_code: Device code flow for headless systems

Device code authentication is useful for servers or systems without a browser. You'll get a code to enter on another device.