Skip to content

Developer Tools

Developer tools converting hello world to Base64, URL encoding, uppercase and hashes

Type dev (with the trailing space) followed by some text, and Raffi lists what that text becomes once transformed. Each row shows the name of the transform with its result underneath. Press Enter to copy the result; Raffi closes once the copy has worked (unless close_on_action is off) and stays open with an error row if it did not.

dev hello world → Base64 encode aGVsbG8gd29ybGQ=
URL encode hello%20world
Uppercase HELLO WORLD
SHA-256 b94d27b9934d3e08...
SHA-1 2aae6c35c94fcfb4...
MD5 5eb63bbbe01eeed0...

The text is used exactly as typed after dev , including any extra spaces, since a single space changes a hash or an encoding.

TransformShown when
Base64 encode and decodeDecode only for valid base64 (standard or URL-safe, padding optional) that decodes to readable text
URL encode and decodeDecode only for valid %XX sequences that decode to readable text
SHA-256, SHA-1, MD5Always; computed with sha256sum, sha1sum and md5sum
Epoch to local date, Epoch to UTC dateThe text is a number of seconds, or milliseconds from 100000000000 up
Date to epochThe text is an RFC 3339 date such as 2023-11-14T22:13:20Z, or 2023-11-14 22:13:20 in local time
JSON pretty and minifyThe text is a valid JSON object or array; key order is kept
Uppercase, LowercaseAlways

A transform that fails on the text, or would return it unchanged, is left out. Hashes show “Computing…” for a moment while typing. If a hash tool is not installed or fails, its row says so and cannot be copied.

Without any keyword, typing uuid shows a new random UUID (version 4), and pw shows a random password made of letters, digits and symbols. Add a length to get a different size: pw 32. Lengths go from 8 to 128 characters, and the default of 20 can be changed with password_length. A new value is made each time the query changes. Press Enter on the row to copy it.

Launchers whose names start with pw or uuid are still listed below the generated row.

Both use the kernel random generator (/proc/sys/kernel/random/uuid and /dev/urandom).

dev searches, uuid and pw queries are saved in the search history when you run an action, but never written to the debug log. The generated values themselves are not stored. Copying still goes through the system clipboard, so a clipboard manager such as CopyQ will record a copied password like any other copied text.

  • sha256sum, sha1sum and md5sum for hashes (GNU coreutils)
  • wl-copy, xclip or xsel for copying

addons.devtools.enabled boolean (default: true)

Set it to false to turn off both the transform list and the uuid and pw generators.

addons.devtools.trigger string (default: dev)

Keyword that opens the transform list. Type it followed by a space. A script filter, text snippet source or web search with the same keyword takes precedence.

addons.devtools.password_length integer (default: 20)

Length of passwords generated by pw without a length. Values outside 8 to 128 are brought back into that range.

addons.devtools.close_on_action boolean (default: true)

Close Raffi after copying a transformed or generated value. When unset, general.close_on_action applies.

addons:
devtools:
trigger: "tx"
password_length: 32
close_on_action: false