Developer Toolbox
Developer tools and algorithm visualizations that run entirely in your browser. Nothing you paste leaves your device.
Base64
Encode and decode Base64
URL Encoder
Encode and decode URLs
HTML Encoder
Encode and decode HTML entities
JSON Formatter
Format, validate and minify JSON
YAML ↔ JSON
Convert between YAML and JSON formats
Diff Viewer
Compare two text blocks and highlight differences
Case Converter
Convert text between camelCase, snake_case, kebab-case and more
SQL Formatter
Format and highlight SQL queries with dialect-specific options.
CSV ↔ JSON
Convert between CSV and JSON with table preview
Word Counter
Count words, characters, lines and paragraphs
JSON to TypeScript
Generate TypeScript interfaces from JSON
JSON Schema Generator
Generate a JSON Schema from sample JSON
HTML Formatter
Format, beautify and minify HTML
CSS Formatter
Format, beautify and minify CSS
JavaScript Formatter
Beautify and minify JavaScript
UUID Generator
Generate UUID v4 and ULID
Password Generator
Generate secure passwords with custom options
Hash Generator
Generate MD5, SHA-1, SHA-256 hashes
JWT Decoder
Decode JWT tokens - header, payload, expiry
CSS Box Shadow Generator
Generate box-shadow CSS with live preview and presets
CSS Gradient Generator
Generate CSS gradients with live preview, stop editor, and presets
CSS Border Generator
Generate CSS borders with live preview, per-side control, and presets
Color Converter
Convert HEX, RGB, HSL colors
px to rem Converter
Convert px, rem and em with a custom base font size
Regex Tester
Test regular expressions with live matching
Cron Parser
Explain cron expressions and show next run times
cURL Builder
Parse and build cURL commands
Timestamp Converter
Convert Unix timestamps to dates
Base Converter
Convert between binary, octal, decimal, hexadecimal
Algorithm visualizations
Step through classic algorithms with animated, annotated examples
Bubble sort
Goes through the list again and again and swaps neighbours that are in the wrong order. After each pass, the largest remaining value is at the end.
Insertion sort
Builds a sorted part on the left, one value at a time. Each new value is taken out and moved left until it reaches a smaller value.
Selection sort
Finds the smallest remaining value and swaps it into the next place. It makes very few swaps, but always the same number of comparisons.
Merge sort
Splits the list in half, sorts each half, then merges the two sorted halves into one sorted list.
Quicksort
Picks one value, the pivot, and moves smaller values to its left and bigger ones to its right. Then it does the same for each side.
Heapsort
Arranges the list into a heap, a tree where every parent is bigger than its children. Then it moves the biggest value to the end, again and again.
Breadth-first search (BFS)
Explores a graph layer by layer. A queue decides which vertex comes next, so the closest vertices are always visited first.
Depth-first search (DFS)
Explores a graph by following one path as deep as it can, then going back to the last fork. The stack on screen is that path.