Skip to main content

Crate toolblox_lib

Crate toolblox_lib 

Source
Expand description

Toolblox native host.

Toolblox is a Tauri 2 desktop app for managing and launching Roblox accounts. This crate owns everything that touches secrets, the network, the file system, or other processes. The React interface receives display data and opaque IDs only.

ยงModules

  • app_commands: the Tauri commands the interface calls, and the shared Runtime.
  • startup and update: the fail-closed update gate that runs before the app opens.
  • storage and models: validated, atomic JSON persistence for settings and accounts.
  • credentials: Roblox sessions in Windows Credential Manager or the macOS Keychain.
  • login: the isolated Roblox sign-in window.
  • roblox: Roblox web APIs for profiles, presence, games, and join tickets.
  • auto_rejoin: presence monitoring for drop notifications and auto-rejoin.
  • multi_instance: running several Roblox clients on Windows.
  • migration: one-time import from the legacy Flet app.
  • lifecycle: window, tray, and single-instance behavior.
  • widgets, widget_protocol, widget_ipc, and widget_process: signed widget packages, their assets, permission-checked messages, and sidecar processes.

ยงData

Current data lives in the v2 folder inside the Toolblox data folder: %LOCALAPPDATA%\Toolblox on Windows and ~/Library/Application Support/Toolblox on macOS.

Modulesยง

app_commands ๐Ÿ”’
Tauri command boundary and frontend-safe application state.
auto_rejoin ๐Ÿ”’
Conservative presence monitor for opt-in auto-rejoin and drop notifications.
credentials ๐Ÿ”’
OS-backed Roblox session storage. Secrets stay inside the Rust host.
lifecycle ๐Ÿ”’
Window, tray, single-instance, and autostart lifecycle helpers.
login ๐Ÿ”’
Isolated Roblox login webview and secret handoff.
migration ๐Ÿ”’
One-way import of legacy Flet JSON and OS-protected sessions.
models ๐Ÿ”’
Typed persisted data and frontend-safe account views.
multi_instance ๐Ÿ”’
Best-effort Windows Roblox singleton cleanup using the bundled audited helper.
roblox ๐Ÿ”’
Roblox HTTP flows and strict launch-URI construction.
startup ๐Ÿ”’
Fail-closed release update gate shown before the main application state loads.
storage ๐Ÿ”’
Validated, atomic JSON persistence serialized by one application state.
update ๐Ÿ”’
Fail-closed startup update decisions.
widget_ipc ๐Ÿ”’
Versioned, permission-checked messages exchanged with isolated widget frames.
widget_process ๐Ÿ”’
Lifecycle ownership for declared widget sidecar processes.
widget_protocol ๐Ÿ”’
Read-only custom protocol for installed widget web assets.
widgets ๐Ÿ”’
Permissioned widget manifests, signed catalogue data, and safe package installation.

Constantsยง

SAFE_MODE_MARKER ๐Ÿ”’
Name of the marker file that requests safe mode for the next launch.

Functionsยง

run
Builds and runs the Tauri application.
set_safe_mode_marker
Records whether the next launch skips widgets. Failures only lose the one-time request.
start_widgets_on_launch ๐Ÿ”’
Starts the processes of widgets marked to start on launch, unless safe mode is active.
take_safe_mode ๐Ÿ”’
Safe mode applies for this launch when requested with --safe-mode or by the marker, which is consumed so the following launch loads widgets again.
toolblox_data_root ๐Ÿ”’
Returns the legacy Toolblox data folder, whose v2 subfolder holds current data.