This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

--mono:ui-monospace,SFMono-Regular,Menlo,monospace;

Utilities · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — try it free, no account needed.
CategoryUtilities
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

This userscript adds a floating Text Case Converter panel to any webpage that transforms selected text into different case formats. It supports eight case conversions: UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, and kebab-case. As you select text on the page, the panel shows a live preview of the converted text in the selected format. The "Convert Selection" button replaces the selected text with the converted version directly on the page. The "Copy Converted" button copies the converted text to your clipboard without modifying the page. The "Clear Selection" button clears any active selection. All panel interactions use the BGPanel component, which automatically persists per-site position and collapse state.

WHERE IT RUNS

The script runs on all websites (*://*/*) through the BotGentz extension. It does not require any special permissions beyond those already granted by the extension. It works in any modern browser that supports the BotGentz userscript environment. The panel appears automatically on every page load, ready to assist with text case conversion.

HOW TO USE

The panel appears as a floating bubble in the bottom-right corner of your browser window. Click the bubble to expand the panel. Select any text on the page—the panel will automatically display a live preview of the converted text. Choose your desired case format from the dropdown menu. Click "Convert Selection" to replace the selected text on the page with the converted version. Click "Copy Converted" to copy the converted text to your clipboard. Click "Clear Selection" to clear the current selection. The panel remembers your preferred case format across page loads using GM_setValue.

LIVE SELECTION DETECTION WITH REAL-TIME PREVIEW AND IN-PLACE REPLACEMENT

The script listens for the selectionchange event on the document, triggering an update whenever the user selects or deselects text. When text is selected, the script extracts the selection using window.getSelection(), normalizes the text, and applies the selected case conversion using a set of transformation functions. Each case converter handles edge cases appropriately: Title Case capitalizes the first letter of each word; Sentence case capitalizes the first letter of each sentence; camelCase removes non-alphanumeric characters and capitalizes each word boundary after the first; PascalCase does the same but capitalizes the first character; snake_case replaces spaces with underscores; kebab-case replaces spaces with hyphens. The preview updates in real time as the user changes the selection or the format. The in-place replacement uses the Selection API to delete the selected range and insert the converted text as a new text node, preserving the document structure without affecting other elements.

THE PANEL

The panel is built using the BGPanel component, which provides a consistent, accessible interface across all BotGentz tools. It supports drag-to-reposition via the header, collapse on click, and stores the panel's position and state per site using GM_setValue. The panel includes a close button (✕) to dismiss it temporarily—the panel reappears on next page load. The settings section includes a dropdown for selecting panel position (bottom-right, top-right, bottom-left, top-left), which is saved globally. The panel has a fixed width of 340px and a maximum height of 80vh, with scrolling for content that overflows. The preview area displays the converted text in a monospace font for easy reading.

PLEASE NOTE

Requires the free BotGentz extension to run. The script uses the Selection API which is supported in all modern browsers. The in-place replacement replaces only the selected text range—if the selection spans multiple elements, the replacement creates a single text node where the selection starts. The script does not collect, store, or transmit any personal data. The case format preference is saved globally using GM_setValue. The "Clear Selection" button clears the active selection but does not undo any previous conversions. Always verify the converted text before making changes to important content.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.