devxcode

Git Undo Commit & Command Builder

Pick the task, get the exact git command — with safety labels and a verify step.

0 bytes uploaded

Where a task has a safer and a riskier command, the safer one is listed first.

Undo & recover

Undo the last commit

git reset --soft HEAD~1

Moves the branch back one commit. Everything the commit contained is still in your files and still staged, so you can fix it up and commit again.

What should happen to the commit's changes?
Has the commit been pushed?

Check it worked

git log --oneline -3

The undone commit no longer appears at the top (or, on the pushed path, a new revert commit sits above it).

Worth knowing

  • git reset only rewrites your local branch — if the commit was pushed, resetting locally makes your branch diverge from the remote.

Undo the last several commits

git reset --soft <commit>

Moves the branch back to the chosen commit. Every change from the undone commits stays in your files, staged as one batch.

What should happen to the undone changes?
Have the commits been pushed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -5

The branch tip is the chosen commit (local path) or new revert commits sit on top (pushed path).

Unstage a file

git restore --staged -- <path>

Takes the file out of the staging area. The edits stay in the file itself — only the 'ready to commit' mark is removed.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

The file now shows as modified but unstaged (an M in the second column).

Using Git older than 2.23?

Before Git 2.23 the same undo was spelled: git reset HEAD <path> — it behaves identically here.

Unstage everything

git restore --staged .

Empties the staging area for the whole working tree. All edits stay in your files, unstaged.

Check it worked

git status --short

Nothing is listed as staged; your edits appear as unstaged modifications.

Using Git older than 2.23?

Before Git 2.23 the same undo was spelled: git reset HEAD

Discard changes in one file

git stash push -- <path>

Moves the file's uncommitted changes into a stash and restores the committed version. Get them back any time with git stash pop.

Keep a copy first?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

The file no longer appears in the list of modified files.

Using Git older than 2.23?

Before Git 2.23 the discard was spelled: git checkout -- <path>

Discard all uncommitted changes

git stash push -u

Stashes every tracked edit and every untracked file, leaving a clean working tree. Restore with git stash pop.

Keep a copy first?

Check it worked

git status --short

The output is empty — the working tree is clean.

Undo a merge

git reset --merge ORIG_HEAD

Rewinds the branch to where it was just before the merge (git saved that spot as ORIG_HEAD) while keeping uncommitted edits that don't overlap the merge.

What should happen to your uncommitted work?
Has the merge been pushed?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The merge commit leaves the branch. It stays recoverable via git reflog for at least 30 days by default.

Check it worked

git log --oneline -3

The merge commit is gone from the top (local path) or a 'Revert' commit sits above it (pushed path).

Abort a merge in progress

git merge --abort

Stops the conflicted merge and puts the branch and your files back exactly as they were before you ran git merge.

CautionRead the note beside this command before running it.Any conflict resolutions you already typed are discarded. Changes committed before the merge are untouched.

Check it worked

git status --short

No 'unmerged' entries remain; the merge state is gone.

Abort a rebase in progress

git rebase --abort

Stops the rebase and returns the branch to the commit it pointed at before the rebase started.

CautionRead the note beside this command before running it.Conflict resolutions typed during this rebase are discarded.

Check it worked

git status --short

The 'rebase in progress' state is gone and the working tree is back to normal.

Abort a cherry-pick in progress

git cherry-pick --abort

Stops the conflicted cherry-pick and restores the branch and files to their state before it began.

CautionRead the note beside this command before running it.Conflict resolutions typed during this cherry-pick are discarded.

Check it worked

git status --short

No cherry-pick state or unmerged entries remain.

Undo a finished rebase

git reflog
the entry before 'rebase (start)' is your pre-rebase position

Shows every place your HEAD has pointed recently. Right after a rebase, ORIG_HEAD and the reflog both know the old position.

How do you want to proceed?

Check it worked

git log --oneline -5

The branch history matches what you had before the rebase.

Recover commits after a hard reset

git reflog
find the entry from just before the reset

The reflog records every commit your HEAD has pointed at, including ones a hard reset removed from the branch. Copy the id you want back.

How do you want to proceed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -3

The recovered commit is back at the top of the branch.

Worth knowing

  • Reflog entries for commits a reset removed expire after 30 days by default (gc.reflogExpireUnreachable) — recover sooner rather than later.

Recover a deleted file

git restore -- <path>

Copies the file back out of the last commit into your working tree.

Was the deletion committed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

The file exists again and the working tree reports no deletion.

Using Git older than 2.23?

Before Git 2.23 the restore was spelled: git checkout HEAD~1 -- <path>

Undo git rm

  1. git restore --staged -- <path>
    un-record the deletion
  2. git restore -- <path>
    put the file back on disk

git rm staged a deletion and removed the file from disk; these two steps reverse both parts.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

The file is back and no deletion is staged.

Delete untracked files

git clean -nd

A dry run: prints every untracked file and folder that a real clean would delete, and touches nothing.

How do you want to proceed?

Check it worked

git status --short

No ?? entries remain (delete) or everything is unchanged (preview).

Worth knowing

  • Files matched by .gitignore are NOT removed unless you add -x — build outputs usually survive a plain clean.

Restore a file from an old commit

git restore --source=<commit> -- <path>

Replaces the working copy of the file with the version from the chosen commit. Nothing is committed until you stage and commit it.

The command keeps its placeholders until the fields above are filled in.

DestructiveRead the note beside this command before running it.Overwrites the file's current uncommitted content in your working tree, which git cannot get back.

Check it worked

git status --short

The file shows as modified — its content now matches the old commit.

Using Git older than 2.23?

Before Git 2.23 this was spelled: git checkout <commit> -- <path>

Stash your changes

git stash push -m <message>

Saves your tracked edits into a labelled stash and returns the files to the last commit. Restore with git stash pop.

What should be stashed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git stash list

Your new stash appears at the top as stash@{0} with the label you gave it.

Bring stashed changes back

git stash apply

Re-applies the newest stash to your working tree and leaves the stash entry in place as a safety copy.

Keep the stash afterwards?

Check it worked

git status --short

Your stashed edits are back in the file list.

Apply a specific stash

git stash apply <stash>

Re-applies the stash you name (as shown by git stash list, e.g. stash@{1}) and keeps the entry in the list.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

The chosen stash's edits are back in the file list.

Worth knowing

  • In zsh, quote the reference — 'stash@{1}' — because unquoted braces can be expanded by the shell.

List and inspect stashes

git stash list

Shows every stash, newest first, as stash@{0}, stash@{1} and so on.

What do you want to see?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git stash list

The stash entries you expect are present.

Delete stashes

git stash drop <stash>

Removes the named entry from the stash list.

Delete how much?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The drop prints the stash's commit id — keep it; git stash store can resurrect the stash from that id until git garbage-collects it.

Check it worked

git stash list

The deleted entries no longer appear.

Stash just one file

git stash push -m <message> -- <path>

Stashes only the named file's changes; everything else you were editing stays in place.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git stash list

A new stash holding just that file appears at the top.

Recover a dropped stash

  1. git fsck --unreachable
    if you lost the id the drop printed, unreachable commits are listed here
  2. git stash store -m <message> <commit>

A dropped stash lives on as an unreachable commit until garbage collection. git stash store puts that commit back into the stash list.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git stash list

The recovered stash is back at stash@{0}.

Worth knowing

  • Recovery only works until git's garbage collection prunes unreachable objects — do it promptly.

Branches

Rename a branch

git branch -m <new-branch>

Renames the branch you are on. Commits, history and staged work are untouched.

Which branch?
Does the branch exist on the remote?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The new name is listed (and, on the pushed path, tracks the remote's new name).

Delete a local branch

git branch -d <branch>

Deletes the branch, but only when its commits are already reachable from your current branch — the built-in safety net.

How careful should git be?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch --list

The deleted branch no longer appears in the list.

Worth knowing

  • You cannot delete the branch you are currently on — switch to another branch first.

Delete a remote branch

  1. git push <remote> --delete <branch>
    remove it from the remote
  2. git branch -d <branch>
    companion: delete your local copy too (skip if you never had one)

The push removes the branch from the remote for everyone. The companion -d then removes your local copy — it refuses if the branch holds unmerged work, which is your safety net.

The command keeps its placeholders until the fields above are filled in.

DestructiveRead the note beside this command before running it.Deleting a remote branch affects everyone using that remote, and remotes usually keep no reflog. If you still have the commit id, anyone can restore it with: git push <remote> <commit>:refs/heads/<branch>

Check it worked

git ls-remote --heads <remote> <branch>

No output means the branch is gone from the remote.

Worth knowing

  • Remotes refuse to delete their default branch (usually main) — change the default first if that is really what you want.

Create a branch

git switch -c <branch>

Creates the branch at your current commit and switches to it.

Switch to it right away?
Where should it start?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The new branch appears, pointing at the expected commit.

Using Git older than 2.23?

Before Git 2.23 create-and-switch was spelled: git checkout -b <branch>

Switch to another branch

git switch <branch>

Checks out the branch. Uncommitted changes come along if they don't conflict; otherwise git refuses and nothing is lost.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch --show-current

Prints the branch you just switched to.

Using Git older than 2.23?

Before Git 2.23 this was spelled: git checkout <branch>

Check out a branch from the remote

  1. git fetch <remote>
    make sure the remote branch is known locally
  2. git switch <branch>

After the fetch, git switch sees exactly one remote with that branch name, creates a local branch from it, and sets up tracking automatically.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The new local branch is listed and tracks the remote branch.

Using Git older than 2.23?

Before Git 2.23 this was spelled: git checkout --track <remote>/<branch>

List branches

git branch

Lists local branches; the current one is marked with *.

Which branches?

Check it worked

git branch --show-current

Confirms which branch you are on while reading the list.

Push a new branch

git push -u <remote> <branch>

Publishes the branch and records the tracking link, so future git push and git pull need no arguments.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The branch now shows its remote counterpart in brackets.

Set a branch's upstream

git branch --set-upstream-to=<remote>/<branch>

Links your current branch to the named remote branch, so plain git pull and git push know where to go.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

Your branch now shows the tracked remote branch in brackets.

Remove a branch's upstream

git branch --unset-upstream

Removes the tracking link from your current branch. The branch and the remote branch both stay; only the association goes.

Check it worked

git branch -vv

Your branch no longer shows a remote in brackets.

Compare two branches

git log --oneline <base>..<compare>

The two-dot range means 'commits reachable from the compared branch but not from the base'.

Compare what?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch --show-current

Comparing never changes your checkout — you are still on the same branch.

Show the current branch

git branch --show-current

Prints just the current branch name — empty output means you are on a detached HEAD, not on any branch.

Check it worked

git status --short

Runs clean; the branch name matches what git status reports.

In detached HEAD state?

Empty output means detached HEAD: you are on a commit, not a branch. Commits made here need a branch before you switch away — see 'save work from a detached HEAD'.

Duplicate a branch

git branch -c <old-branch> <new-branch>

Creates a second branch pointing at the same commit — a cheap safety copy before a risky rewrite.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

Both branches are listed at the same commit.

Move work to a new branch

git switch -c <branch>

Uncommitted changes travel with you: creating and switching to the new branch takes them along, and the old branch is left exactly at its last commit.

Have you committed yet?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The new branch exists and you are on it.

Copy a commit to another branch

  1. git switch <branch>
  2. git cherry-pick <commit>

Switches to the target branch and replays the commit there. The original stays where it was — remove it from the wrong branch afterwards with the 'undo the last commit' task.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Cherry-picking copies a commit; the same change now exists in two places until you clean up the source branch.

Check it worked

git log --oneline -3

The copied commit is at the top of the target branch.

Turn a stash into a branch

git stash branch <branch>

Creates a branch at the commit the stash was made from, applies the stash there, and drops it on success — the cleanest way out when a stash no longer applies to your moved branch.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

You are on the new branch with the stashed changes back in your files.

Switch back to the previous branch

git switch -

The dash means 'the branch I was on before this one' — run it again to bounce back.

Check it worked

git branch --show-current

Prints the branch you were on previously.

Using Git older than 2.23?

Before Git 2.23 this was spelled: git checkout -

Check out a tag

git switch --detach <tag>

Puts your working tree at the tagged commit in detached-HEAD mode — ideal for inspecting or building a release.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.You are now on a commit, not a branch: new commits made here are lost when you switch away unless you create a branch first.

Check it worked

git status --short

git reports a detached HEAD at the tagged commit and a clean tree.

In detached HEAD state?

To keep any commits you make here, run: git switch -c <branch> before leaving — see 'save work from a detached HEAD'.

Check out a specific commit

git switch --detach <commit>

Moves your working tree to that commit in detached-HEAD mode so you can look around or test without touching any branch.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.You are now on a commit, not a branch: new commits made here are lost when you switch away unless you create a branch first.

Check it worked

git status --short

git reports a detached HEAD at the chosen commit.

Using Git older than 2.23?

Before Git 2.23 this was spelled: git checkout <commit>

In detached HEAD state?

To keep any commits you make here, run: git switch -c <branch> before leaving — see 'save work from a detached HEAD'.

Show which remote each branch tracks

git branch -vv

Lists every local branch with its latest commit, its tracked remote branch in brackets, and how far ahead/behind it is.

Check it worked

git branch --show-current

Cross-check the starred row against your current branch.

List branches by last activity

git branch --sort=-committerdate

Lists local branches with the most recently committed-to first — handy for finding what you worked on last week.

Check it worked

git branch --show-current

Your current branch should be near the top if you just committed.

Find merged and unmerged branches

git branch --merged <branch>

Every branch listed is fully reachable from the named branch, so deleting it loses nothing.

Which set?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch --show-current

Listing never changes your checkout.

Recover a deleted branch

  1. git reflog
    find the tip of the deleted branch (git branch -D also printed its id)
  2. git branch <branch> <commit>

A deleted branch's commits survive in the reflog; recreating the branch at the old tip brings everything back.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -vv

The branch is back, pointing at the recovered commit.

Worth knowing

  • Reflog entries for deleted branches expire — recover promptly, before git's garbage collection runs.

Save work from a detached HEAD

git switch -c <branch>

Creates a branch right where you are, so the commits you made while detached now have a permanent name and can never be garbage-collected.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch --show-current

Prints the new branch — you are no longer detached.

In detached HEAD state?

If you already switched away and lost the commits, find them with git reflog and recreate the branch at that id — see 'recover a deleted branch'.

Remotes

Add a remote

git remote add <remote> <url>

Registers the URL under a short name. 'origin' is the convention for your main remote; 'upstream' for the repository you forked from.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git remote -v

The new remote is listed with its fetch and push URLs.

Change a remote's URL

git remote set-url <remote> <url>

Points the existing remote at a new URL. History, branches and tracking links all stay as they are.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git remote -v

The remote now shows the new URL.

Show your remotes

git remote -v

Lists every remote with the URLs used for fetching and pushing.

Check it worked

git status --short

Listing remotes changes nothing in your working tree.

Rename a remote

git remote rename <old-remote> <new-remote>

Renames the remote and updates every branch's tracking configuration to match — no branch is left pointing at the old name.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git remote -v

Only the new name appears in the list.

Remove a remote

git remote remove <remote>

Forgets the remote: its URL, its remote-tracking branches and related settings are removed from this clone. The remote repository itself is untouched.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Branches that tracked this remote lose their upstream link; re-add the remote and use 'set a branch's upstream' to relink them.

Check it worked

git remote -v

The removed remote is no longer listed.

Fetch the latest from a remote

git fetch <remote>

Downloads new commits and branches from the remote into your remote-tracking snapshot. Your own branches and files never change on a fetch.

Fetch from where?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -r

Remote-tracking branches reflect the remote's current state.

Prune stale remote-tracking branches

git remote prune --dry-run <remote>

Lists every remote-tracking branch whose branch no longer exists on the remote — and removes nothing.

How do you want to proceed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -r

Stale entries are gone from the remote-tracking list.

Force-push a rewritten branch

git push --force-with-lease <remote> <branch>

Replaces the remote branch with your rewritten one, but only if the remote still looks the way your last fetch saw it — if a teammate pushed meanwhile, the push is refused and nothing is lost.

Overwrite protection?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Anyone who already pulled the old history must rebase onto the rewritten branch. Announce rewrites on shared branches.

Check it worked

git ls-remote --heads <remote> <branch>

The remote branch id now matches your local branch tip.

Worth knowing

  • --force-with-lease checks the remote against your remote-tracking snapshot and refuses when the remote has commits you haven't fetched. Fetching renews that lease — so if you fetch first, inspect what arrived (git log <branch>..<remote>/<branch>) before pushing; a blind fetch-then-push defeats the protection. Background fetches from IDEs can do the same.
  • Shallow clones can't see older history — log and blame stop at the cut-off — so review what a rewrite replaces from full history: deepen a shallow clone with the 'convert a shallow clone' task before force-pushing.

Pull without a merge commit

git pull --no-rebase <remote> <branch>

Fetches, then merges the remote branch into yours, recording a merge commit when both sides have new work.

How should your local commits combine with the remote's?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -5

Remote commits are in your history — linearly (rebase) or via a merge commit.

Push tags to a remote

git push <remote> <tag>

Publishes a single tag. Ordinary pushes never send tags, which is why yours weren't showing up.

Which tags?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git ls-remote --tags <remote>

The pushed tag(s) appear in the remote's tag list.

Delete a tag from a remote

  1. git push <remote> --delete <tag>
    remove it from the remote
  2. git tag -d <tag>
    companion: remove your local copy too

Removes the tag from the remote for everyone, then deletes your local copy so a later git push --tags cannot resurrect it by accident.

The command keeps its placeholders until the fields above are filled in.

DestructiveRead the note beside this command before running it.Anyone who already fetched the tag keeps it locally, and releases pinned to it lose their anchor. If you must move a tag, delete-then-recreate like this is the honest way — retagging in place silently diverges across clones.

Check it worked

git ls-remote --tags <remote>

The deleted tag no longer appears in the remote's tag list.

Fetch one branch only

git fetch <remote> <branch>

Downloads just that branch's new commits. The result is also available as FETCH_HEAD for one-off diffs and merges.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git branch -r

The remote-tracking entry for that branch is up to date.

Clone one branch only

git clone --branch <branch> --single-branch <url>

Clones the repository with only the named branch checked out and tracked — less to download when you need exactly one line of work.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git ls-remote --heads <url>

Lists the remote's branches — confirm the one you cloned exists there.

Worth knowing

  • Other branches are invisible in a single-branch clone until you widen the fetch refspec or re-clone.

Clone without full history

git clone --depth 1 <url>

Clones only the newest commit of each branch instead of the whole history — much faster for big repositories when you just need the current files.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git ls-remote --heads <url>

The remote is reachable; your clone holds its latest commit.

Worth knowing

  • Shallow clones can't see older history: log, blame and bisect stop at the cut-off. Deepen later with the 'convert a shallow clone' task.
  • Force-pushing from a shallow clone is riskier: --force-with-lease has an incomplete picture of the remote.

Convert a shallow clone to a full one

git fetch --unshallow

Downloads the history your shallow clone skipped, turning it into a complete clone with full log, blame and bisect.

Check it worked

git rev-list --count HEAD

The commit count now reflects the full history, not just the shallow slice.

Sync a fork with upstream

  1. git fetch <upstream>
    get the original repository's new commits
  2. git switch <branch>
  3. git merge <upstream>/<branch>
    bring them into your branch
  4. git push <remote> <branch>
    update your fork

Fetches the original repository, merges its branch into yours, and pushes the result to your fork — the standard fork-maintenance loop.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -5

Upstream's latest commits now appear in your branch history.

Worth knowing

  • This assumes you added the original repository as a remote first — see 'add a remote' (conventionally named upstream).

List branches on the remote

git ls-remote --heads <remote>

Asks the remote directly for its branches — live data, unlike git branch -r which shows your last-fetched snapshot.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git remote -v

Confirms which remote you just queried.

Push all branches

git push <remote> --all

Publishes every local branch to the remote in one command — useful when moving a repository to a new home.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Half-finished local experiments become visible to everyone with access to the remote. Check git branch first.

Check it worked

git ls-remote --heads <remote>

Every local branch now appears on the remote.

History

Change the last commit message

git commit --amend -m <message>

Replaces the last commit with an identical one carrying the new message. Staged changes, if any, are folded in too.

Has the commit been pushed?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Amending gives the commit a new id. That is harmless while it is local — never amend a commit others already have.

Check it worked

git log --oneline -3

The top commit shows the new message.

Worth knowing

  • Amend rewrites only the LAST commit. Older messages need an interactive rebase, which is outside this tool's copy-paste lane.

Add a forgotten file to the last commit

  1. git add -- <path>
  2. git commit --amend --no-edit

Stages the file and folds it into the last commit. --no-edit keeps the existing message.

Has the commit been pushed?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Amending gives the commit a new id. That is harmless while it is local — never amend a commit others already have.

Check it worked

git log --oneline -3

Still one commit at the top — now containing the forgotten file.

Change the last commit's author

git commit --amend --no-edit --author=<author>

Rewrites the last commit with the author you give as 'Name <email>', keeping the message and content unchanged.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Amending gives the commit a new id; if it was already pushed, follow up with the force-push task and coordinate with your team.

Check it worked

git log -1 --format=%an%x20%ae

Prints the top commit's author name and email — now the corrected identity.

Worth knowing

  • Fix the default for FUTURE commits too, or the next commit repeats the mistake — see 'set your name and email'.

Squash the last commits into one

  1. git reset --soft <commit>
    undo the commits but keep all their changes staged
  2. git commit -m <message>

Rewinds to the chosen commit with every later change still staged, then records them as a single new commit — a squash with no interactive rebase.

Have the commits been pushed?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The squashed-away commits leave the branch (reflog keeps them for at least 30 days by default). Uncommitted work is untouched by --soft.

Check it worked

git log --oneline -3

One combined commit now sits where the several used to be.

Revert a commit

git revert --no-edit <commit>

Creates a new commit that applies the exact inverse of the chosen commit. History is preserved — this is the safe undo for anything already shared.

Commit the reversal right away?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -3

A Revert commit appears (or git status shows the staged reversal).

Revert a merge commit

git revert -m 1 --no-edit <merge-commit>

Reverting a merge needs to know which side to keep: -m 1 keeps the branch you were on when you merged and backs out everything the merged branch brought in.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.After reverting, merging the same branch again brings nothing in — git considers it already merged. Revert the revert first if the branch comes back later.

Check it worked

git log --oneline -3

A Revert commit sits above the merge; the merged changes are gone from the files.

Cherry-pick a commit

git cherry-pick <commit>

Replays the chosen commit onto your current branch, keeping its message and authorship.

Commit it right away?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -3

The picked commit is on top (or its changes are staged, on the review path).

Cherry-pick a range of commits

git cherry-pick <start-commit>..<end-commit>

Replays every commit after the start (exclusive) up to the end (inclusive), oldest first, each as its own commit.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.If one commit in the range conflicts, the pick pauses there — resolve and run git cherry-pick --continue, or back out with the abort task.

Check it worked

git log --oneline -5

The picked commits appear on top in their original order.

Remove a file from history

  1. git rm --cached -- <path>
    stop tracking it (keeps the file on disk)
  2. git commit --amend --no-edit

Removes the file from the last commit only — enough when the mistake was just committed and never existed before. Add it to .gitignore so it can't come back.

How far back does it exist?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.If the commit was already pushed, the amended commit must be force-pushed, and the file remains visible in the remote's old history until that history is unreachable.

Check it worked

git log --oneline -- <path>

No commits mention the file any more (last-commit path: the newest commit doesn't).

Worth knowing

  • git filter-branch is git's built-in but deprecated rewriter; for large repositories the separately-installed git-filter-repo tool is the maintained, faster option.
  • Copy the whole-history line exactly as printed, FILTER_PATH= prefix included: the quoted filter is a command git runs itself, and it reads the path from that variable rather than having it pasted inside the quotes.
  • If that commit contained nothing but this file, --amend refuses to create an empty commit — undo the commit instead (git reset --soft HEAD~1) and re-commit whatever should remain, or rerun the amend with --allow-empty.

Drop one commit from the branch

git rebase --onto <commit>^ <commit>

Replays every commit after the doomed one onto its parent — the commit disappears and the rest keep their order. If a later commit depended on it, the rebase pauses with a conflict.

Has the branch been pushed?

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The branch's later commits get new ids, and the dropped commit's changes leave the branch (reflog keeps everything for at least 30 days by default).

Check it worked

git log --oneline -5

The dropped commit no longer appears in the history.

Split the last commit in two

  1. git reset --mixed HEAD~1
    undo the commit; its changes stay in your files, unstaged
  2. git add -- <path>
    stage just the first piece
  3. git commit -m <message>
    repeat add + commit for the remaining pieces

Unpacks the last commit into your working tree, then lets you re-commit it in as many pieces as you like.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The original single commit is replaced (reflog keeps it for at least 30 days by default). Don't split commits that were already pushed without coordinating a force-push.

Check it worked

git status --short

After the first piece is committed, the remaining changes are still listed, ready for the next commit.

View commit history

git log --oneline -20

The last 20 commits, one line each — id and title.

How much detail?

Check it worked

git status --short

Viewing history never changes anything.

View one file's history

git log --oneline -- <path>

Lists every commit that changed the file, newest first.

How much detail?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Viewing history never changes anything.

See who last changed each line

git blame -- <path>

Prints the file with, on every line, the commit, author and date that last touched it.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Blame is read-only.

Find when a file was deleted

git log --oneline --diff-filter=D -- <path>

Lists only commits that DELETED the path — the top result is when it disappeared. Restore it from that commit's parent with the 'recover a deleted file' task.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Searching history never changes anything.

Search commit messages

git log --oneline --grep=<text>

Lists commits whose message matches the text (a regular expression).

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Searching history never changes anything.

Find the commit that changed some code

git log --oneline -S <text>

The 'pickaxe' search: lists commits where the number of occurrences of the text changed — i.e. where it was added or removed.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Searching history never changes anything.

Show what a commit changed

git show <commit>

Prints the commit's metadata, message and full diff.

How much detail?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Showing a commit never changes anything.

Diff two commits

git diff <base> <compare>

Shows what changed going from the older commit to the newer one.

Diff how much?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Diffing never changes anything.

Tag a commit

git tag -a <tag> -m <message>

Creates an annotated tag at your current commit — it records who tagged, when and why, which is what release tooling expects.

What kind of tag?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git tag --list

The new tag appears in the list.

Worth knowing

  • Tags are not pushed by ordinary git push — publish with the 'push tags' task.

Delete a local tag

git tag -d <tag>

Removes the tag from your clone only. If it was pushed, remove it from the remote too with the 'delete a tag from a remote' task.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.The delete prints the commit id the tag pointed at — keep it if you might recreate the tag.

Check it worked

git tag --list

The tag no longer appears.

Count commits

git rev-list --count HEAD

Prints how many commits are reachable from your current position.

Check it worked

git log --oneline -3

Sanity-check the newest commits against the count.

List commits by author

git log --oneline --author=<text>

Lists commits whose author matches the pattern — a name fragment or an email works.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Searching history never changes anything.

Show a file as it was at a commit

git show <commit>:<path>

Prints the file's full content exactly as that commit recorded it, without touching your working copy.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Viewing an old version never changes anything.

Worth knowing

  • The path is relative to the repository root, not to your current folder.

Undo an amend

git reset --soft HEAD@{1}

HEAD@{1} is where your branch pointed just before the amend — resetting softly there restores the original commit while keeping the amend's extra changes staged.

CautionRead the note beside this command before running it.Relies on the reflog entry created by the amend; run it before anything else moves HEAD, or find the right entry with git reflog first.

Check it worked

git log --oneline -3

The top commit is the pre-amend one again.

Undo a completed cherry-pick

git reset --soft HEAD~1

Removes the cherry-picked commit from the tip while keeping its changes staged (assumes it is the newest commit).

What should happen to its changes?
Has it been pushed?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git log --oneline -3

The cherry-picked commit is gone (local) or a revert sits above it (pushed).

Config

Set your name and email

  1. git config user.name <your-name>
  2. git config user.email <your-email>

Stores the identity in this repository's .git/config — it wins over the global setting, which is how you keep a work identity in work repos.

Where should it apply?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git config --get user.email

Prints the email that new commits will record.

Worth knowing

  • Changing config never edits existing commits — fix the last commit's identity with 'change the last commit's author'.

Show your git configuration

git config --list --show-origin

Prints every effective setting together with the file it came from — the fastest way to see which scope is winning.

How much?

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Reading configuration changes nothing.

Set the default branch name for new repos

git config --global init.defaultBranch <branch>

Every future git init on this machine starts on this branch name. Existing repositories are not touched.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git config --get init.defaultBranch

Prints the name new repositories will start with.

Worth knowing

  • To rename an EXISTING repository's default branch, use 'rename a branch' with its pushed path.

Set git's editor

git config --global core.editor <editor>

The command git launches for commit messages and similar prompts. For VS Code use 'code --wait' — the --wait keeps git waiting until you close the tab.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git config --get core.editor

Prints the editor command git will launch.

Set how git pull combines work

git config --global pull.rebase true

Every git pull now rebases your local commits on top of the fetched branch — the setting that silences the 'divergent branches' hint with linear history.

When branches diverge, pull should…

Check it worked

git config --get pull.rebase

Prints true (rebase) or false (merge).

Create a git alias

git config --global alias.<shortcut> <expansion>

After this, git <shortcut> runs the expansion — e.g. alias.st set to 'status --short' makes git st a two-key status.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git config --get-regexp alias

Lists your aliases, including the new one.

Stop chmod-only changes showing as modified

git config core.fileMode false

This repository stops treating executable-bit changes as modifications — the usual fix when a mounted drive or another OS flips permissions on everything.

Check it worked

git config --get core.fileMode

Prints false — mode-only diffs are now ignored here.

Worth knowing

  • Scripts that genuinely need the executable bit tracked should keep fileMode true; set this per-repository, not globally.

Set line-ending handling

git config --global core.autocrlf input

Files are committed with LF endings and checked out untouched — the standard setting on macOS and Linux.

Which system are you on?

Check it worked

git config --get core.autocrlf

Prints input (macOS/Linux) or true (Windows).

Worth knowing

  • Team repositories are better served by a committed .gitattributes file, which wins over everyone's personal autocrlf.

Stop retyping HTTPS passwords

git config --global credential.helper cache

Git remembers credentials in memory for 15 minutes by default — nothing is ever written to disk.

How should credentials be kept?

Check it worked

git config --get credential.helper

Prints the helper git will use.

Stop tracking a file (keep it on disk)

  1. git rm --cached -- <path>
    untrack it; the file stays on disk
  2. git commit -m <message>

.gitignore only affects UNtracked files — this is the missing step. The file leaves version control at this commit but stays in your working tree; add it to .gitignore so it never comes back.

The command keeps its placeholders until the fields above are filled in.

CautionRead the note beside this command before running it.Collaborators who pull this commit have their copy of the file DELETED from their working tree (theirs was tracked). Warn them to back up local values first.

Check it worked

git status --short

The file now shows as untracked (??) — or not at all once ignored.

Find out why a file is ignored

git check-ignore -v -- <path>

Prints the exact .gitignore file, line number and pattern that matches the path — no more hunting through nested ignore files.

The command keeps its placeholders until the fields above are filled in.

Check it worked

git status --short

Checking ignore rules changes nothing.

Worth knowing

  • Exit code 1 with no output means nothing ignores the path — if git still won't add it, the file may already be tracked.

Push new branches without --set-upstream

git config --global push.autoSetupRemote true

From now on, a plain git push on a branch with no upstream publishes it and sets up tracking automatically — the 'fatal: the current branch has no upstream' error disappears (Git 2.37+).

Check it worked

git config --get push.autoSetupRemote

Prints true — new branches now push without ceremony.

Turn colored output on

git config --global color.ui auto

Colors status, diff, branch and log output when writing to a terminal, and stays plain when piping to files or other commands.

Check it worked

git config --get color.ui

Prints auto.

Do it offline:$ git log --oneline -3

How to use it

  1. Search the directory in plain words — undo last commit, rename branch, force push. Matching covers task names and intent phrases; an empty search shows all five groups.
  2. Answer the outcome questions. Toggles say what happens — Keep my changes (staged), not --soft — and the safer choice always comes first.
  3. Fill in names where a command shows a <branch>-style placeholder. It stays put until you type; an invalid name is refused with the offending character and its position.
  4. Copy the command — multi-step tasks list their lines in run order — then run the verify line underneath to confirm the result.

Undo a commit is only the front door: this page holds 104 git tasks across undo & recover, branches, remotes, history and config. Open one, answer outcome questions — keep my changes, or throw them away — instead of recalling flags, then copy the exact command: destructive variants carry a labelled warning, and every task ends with a line that checks the result. Names you type are substituted right on this page.

How it works

Each task is a small decision tree stored as data: every combination of its toggle answers maps to a command sequence enumerated ahead of time, so switching an answer swaps in a different pre-built variant rather than editing a string. Within a toggle the safer variant is listed before the dangerous one, and each destructive variant carries its own warning note.

The directory is verified by execution, not proofreading: all 163 command variants run against a real repository — a scratch working copy with a local bare repository standing in for origin. Every line must exit zero, the task's verify command must exit zero, and the outcome is then confirmed with plumbing such as rev-parse, status --porcelain and ls-remote. The date below is that run's date.

Name checking mirrors git check-ref-format. A branch or remote name is refused for a space, a control character, any of ~ ^ : ? * [ \, the sequences .., @{ and //, a segment starting with a dot or ending in .lock, or a leading dash — each with the position that failed. Values that pass but would still confuse a shell are quoted on substitution, so an apostrophe in a commit message never breaks the copied line.

Commands target the spellings git has used since 2.23, when restore and switch took over the undo duties of checkout; where an older spelling differs, the task carries it in a separate note. Tasks that rewrite history fork on one question — has this been pushed? Local-only answers use reset and amend; pushed answers build a revert, which undoes by adding a commit instead of rewriting shared history.

Examples

undo-last-commit · keep my changes (staged) · not pushed
git reset --soft HEAD~1

The directory's default variant. The branch pointer moves back one commit while its changes stay staged, ready to fix and recommit; git log --oneline -3 then shows the undone commit no longer on top. The old tip remains in the reflog.

delete-remote-branch · remote origin · branch feature/x
git push origin --delete feature/x
git branch -d feature/x

Two ordered lines: the push removes feature/x from the remote for everyone, then the companion -d removes your local copy — and refuses if it still holds unmerged work. Empty output from the verify line means the remote branch is gone.

rename-branch · the one I'm on · also on the remote
git branch -m feature/login
git push -u origin feature/login
git push origin --delete feautre/login

Renaming away a typo while standing on the branch. The order matters: rename locally, publish the new name with tracking set (-u), and only then delete the old name — the branch is never absent from the remote.

Every example on this page is executed against the same engine that powers the tool, on every build.

Gotchas worth knowing

Detached HEAD is a place, not an error

Checking out a tag or a raw commit puts you on a commit instead of a branch, and git branch --show-current prints nothing. Commits made there need a branch before you switch away, so the affected tasks carry a note pointing at the save-my-work step: git switch -c with a new name.

Already pushed changes the whole answer

Undo tasks fork on whether the commit left your machine. Rewriting locally is routine; rewriting a pushed branch makes it diverge from the remote for everyone tracking it. The pushed paths therefore build revert commands, and local-only is a visible pre-selected answer, never a hidden assumption.

Before Git 2.23, the spelling differs

git restore and git switch arrived in 2.23 (August 2019). Older installations spell the same operations with reset and checkout — git reset HEAD <path> to unstage, git checkout -- <path> to discard — and affected tasks show the older line in a per-task note. The behaviour is identical.

A blind fetch defeats --force-with-lease

The lease compares the remote branch against your remote-tracking snapshot and refuses the push when the remote has commits you haven't fetched. Fetching renews that lease, so a bare fetch-then-push waves through whatever just arrived — inspect the new commits (git log main..origin/main) before pushing, and remember that background fetches from IDEs renew the lease the same way.

Branch labels are cheap; remote deletions are not

Deleting a local branch — even force-deleting — removes a label; the commits stay in your reflog for at least 30 days by default. Remotes usually keep no reflog, so deleting a remote branch is the step that actually strands work. That task's warning includes the push syntax that restores it from a commit id.

Common errors

A space at position 3 can't be used in a branch name — git ref names never contain spaces, control characters or ~ ^ : ? * [ \.
Usually a pasted ticket title rather than a name. Swap spaces for dashes; the message points at the first offending character.
A branch name can't contain ".." — found at position 8; remove or separate those characters.
Two dots form git's range syntax (main..feature), so names may not contain them. A single dot is fine away from the edges.
A branch name can't start with "-" — git would read it as a command option; start with a letter or digit instead.
A leading dash makes the name look like an option flag to every git command that receives it, so it is refused up front.
"HEAD" is reserved by git and can't be used as a branch name — pick another name.
HEAD always means the commit you currently have checked out; a branch with that exact name would shadow it everywhere.
A space at position 5 can't be used in a revision — use a commit hash, a branch or tag name, or a form like HEAD~2.
Revisions accept hashes, names and navigation forms such as HEAD~2 or main@{1}, never whitespace. Written as one token, HEAD~1 passes.
This value is 257 characters long — the limit for a command parameter is 256 characters; shorten it before building the command.
Parameters cap at 256 characters and the refusal names the limit. Reaching it usually means a paste caught more than intended.

FAQ

How do I undo a git commit that has already been pushed?

Answer yes on the pushed toggle and the task builds a revert: git revert --no-edit HEAD adds a new commit reversing the last one, so shared history is never rewritten and teammates simply pull the reverting commit. Resetting instead would make your branch diverge from the remote.

Does git reset --soft delete my changes?

No. It moves the branch pointer back one commit and leaves your files and staging area untouched — the undone commit's changes sit staged, ready to commit again. Deletion enters only with --hard, which sits behind an explicit throw-the-changes-away answer and wears the destructive label.

What is the difference between git push --force and --force-with-lease?

--force replaces the remote branch unconditionally, including commits you have never seen; --force-with-lease refuses the push when the remote no longer matches your last fetch, failing instead of overwriting a teammate's work. The force-push task lists the lease form first.

How do I unstage a file without losing my edits?

git restore --staged -- <path> takes the file out of the staging area and touches nothing in your working copy. Before Git 2.23 the identical operation was git reset HEAD <path>. Discarding the edits themselves is a different task here, and its discard variant is labelled destructive.

How long can a deleted commit be recovered?

Commits dropped by a reset or branch deletion stay in your reflog — by default about 90 days for reachable entries, 30 for unreachable ones — until garbage collection prunes them; git reflog lists them for recovery. Remotes are the exception: a deleted remote branch usually leaves no reflog at all.

Why does git say my branch name is invalid?

Ref names follow git check-ref-format: no spaces or control characters, none of ~ ^ : ? * [ \, no .., @{ or //, no segment starting with a dot or ending in .lock, no leading dash. The name fields on this page apply the same rules and point at the exact character that fails.

Can I undo a git merge?

Yes — the undo-merge task forks the usual way. Local-only uses git reset --merge ORIG_HEAD to step back to the pre-merge state; a pushed merge is reversed with git revert -m 1, where -m 1 names the mainline parent a two-parent commit cannot infer on its own.

Keyboard shortcuts

⌘/Ctrl + C
Copy the open task's command when no text is selected
⌘/Ctrl + Shift + C
Copy even while text is selected
t
Switch the theme
? or ⌘/Ctrl + /
Open the shortcut help
Esc
Dismiss dialogs and transient state

Nothing you paste here leaves this tab. State only ever travels in links you explicitly create.

git-reset — official documentation (git-scm.com) · git-push — official documentation: --delete, --force-with-lease · git-branch — official documentation: -m rename, -d/-D delete · git-check-ref-format — the ref-name rules this page enforces · git-restore — introduced in Git 2.23 alongside git-switch

All 104 tasks executed against a real repository, pack verified 2026-08-06; main-flow syntax targets Git 2.23+, with older spellings noted per task.

Last reviewed: 2026-08-06

esc

Data Formats & Conversion

  • JSON FormatterPretty-print JSON with configurable indentation — big numbers preserved exactly, entirely on this device.Data Formats & Conversion
  • JSON ValidatorSyntax-check JSON with the exact line, column and probable cause of every error — entirely on this device.Data Formats & Conversion
  • JSON MinifierStrip insignificant whitespace from JSON — values and key order byte-identical, gzip savings measured, entirely on this device.Data Formats & Conversion
  • JSON Tree ViewerNavigate huge JSON as a collapsible, searchable tree — copy any value or path, entirely on this device.Data Formats & Conversion
  • JSON EditorEdit JSON in a tree, table or text view — every change re-renders the other two and big numbers stay exact, entirely on this device.Data Formats & Conversion
  • JSON Diff / CompareCompare two JSON documents structurally — key order ignored, big numbers exact, RFC 6902 patch export — entirely on this device.Data Formats & Conversion
  • JSON Repair / FixerTurn almost-JSON into valid JSON with a logged, visible fix for every change — entirely on this device.Data Formats & Conversion
  • JSON SorterSort JSON object keys recursively — ascending or descending, on this device.Data Formats & Conversion
  • JSON Escape / UnescapeBackslash-escape text into a JSON string body — or unescape one back to text — entirely on this device.Data Formats & Conversion
  • JSON Stringify / UnstringifyWrap a JSON document as a quoted, escaped JSON string token — and unstringify it back — entirely on this device.Data Formats & Conversion
  • JSON to One LineCollapse JSON to a single line for logs, env vars and inline config — readable spacing or fully compact, big numbers preserved exactly, entirely on this device.Data Formats & Conversion
  • JSON Flatten / UnflattenFlatten nested JSON to dot- or bracket-path keys and unflatten it back — big numbers exact, entirely on this device.Data Formats & Conversion
  • JSON Graph VisualizerSee any JSON document as an interactive, collapsible node graph — pan, zoom and copy any path, entirely on this device.Data Formats & Conversion
  • NDJSON / JSON Lines ConverterReshape JSON between a single array and one-record-per-line NDJSON — losslessly, with every line validated, entirely on this device.Data Formats & Conversion
  • JSONPath TesterEvaluate a JSONPath expression against your JSON and see every match highlighted in the source — RFC 9535 semantics, entirely on this device.Data Formats & Conversion
  • JSON Path FinderClick any node in a JSON tree to copy its JSONPath, jq, JS, or RFC 6901 JSON Pointer path — entirely on this device.Data Formats & Conversion
  • jq PlaygroundRun jq filters over your JSON in-browser — jq 1.8.2 on WebAssembly, stdout and errors verbatim, entirely on this device.Data Formats & Conversion
  • JSON Schema ValidatorCheck a JSON document against a JSON Schema and see every violation with its data path and schema path — entirely on this device.Data Formats & Conversion
  • JSON Schema GeneratorPaste sample JSON, get a JSON Schema in the draft you target — required derived from what the samples actually show, entirely on this device.Data Formats & Conversion
  • JSON Schema to Sample JSONTurn a JSON Schema into valid example data — one integer seed makes it reproducible, entirely on this device.Data Formats & Conversion
  • JSON Schema to TypeScriptPaste a JSON Schema, get TypeScript types — local $ref and $defs resolved, every dropped keyword named, entirely on this device.Data Formats & Conversion
  • JSON Schema to ZodTurn a JSON Schema into Zod source with z.infer types — every dropped constraint named, entirely on this device.Data Formats & Conversion
  • JSON to TypeScriptPaste sample JSON, get idiomatic TypeScript interfaces — multi-sample optionality and real unions, entirely on this device.Data Formats & Conversion
  • JSON to Go StructGenerate idiomatic Go structs with correct json tags and initialisms from sample JSON — entirely on this device.Data Formats & Conversion
  • JSON to C# ClassesGenerate C# classes or records from sample JSON, matched to System.Text.Json or Newtonsoft — entirely on this device.Data Formats & Conversion
  • JSON to Java POJOGenerate Java POJOs or records with the right annotation stack from sample JSON — entirely on this device.Data Formats & Conversion
  • JSON to Python / PydanticGenerate Pydantic v2 models, dataclasses or TypedDicts from sample JSON — entirely on this device.Data Formats & Conversion
  • JSON to Rust SerdeGenerate Rust serde structs from sample JSON with correct Option<T> optionality and exact 64-bit integers — entirely on this device.Data Formats & Conversion
  • JSON to Kotlin Data ClassGenerate Kotlin data classes with kotlinx.serialization or Jackson annotations from sample JSON — entirely on this device.Data Formats & Conversion
  • JSON to Swift CodableGenerate Swift Codable structs or classes from sample JSON, with CodingKeys for wire names — entirely on this device.Data Formats & Conversion
  • JSON to Zod SchemaPaste sample JSON, get a Zod schema plus z.infer types — optionality from multiple samples, entirely on this device.Data Formats & Conversion
  • JSON to GraphQL SDLPaste sample JSON, get GraphQL SDL types — nullability read from your samples, entirely on this device.Data Formats & Conversion
  • JSON to SQL DDLGenerate CREATE TABLE DDL from sample JSON for four SQL dialects, with three honest shapes for nested data — entirely on this device.Data Formats & Conversion
  • TypeScript to JSON SchemaTurn TypeScript interfaces and type aliases into a JSON Schema or Zod schema — unsupported types are named, never guessed — entirely on this device.Data Formats & Conversion
  • JSON to Protobuf DefinitionTurn sample JSON into a proto3 .proto message with stable field numbers — entirely on this device.Data Formats & Conversion
  • YAML Validator / LinterSyntax-check YAML with the exact line, column and cause of every error — plus lint warnings on valid files, entirely on this device.Data Formats & Conversion
  • YAML FormatterRe-indent YAML without losing comments or rewriting your numbers — entirely on this device.Data Formats & Conversion
  • YAML to JSON ConverterConvert YAML to JSON or JSON to YAML with anchors, multi-document streams and type quirks handled honestly — entirely on this device.Data Formats & Conversion
  • YAML to XML / CSV ConverterConvert YAML to XML, XML back to YAML, or list-shaped YAML to CSV/TSV — every dropped construct counted — entirely on this device.Data Formats & Conversion
  • YAML Diff / CompareCompare two YAML documents structurally — added, removed, changed and retyped keys, order-insensitive by default, entirely on this device.Data Formats & Conversion
  • XML FormatterPretty-print XML without corrupting mixed content, CDATA or comments — entirely on this device.Data Formats & Conversion
  • XML ValidatorCheck XML well-formedness with the exact line, column and paired open-tag position of every error — entirely on this device.Data Formats & Conversion
  • XML MinifierStrip insignificant whitespace from XML — mixed content, CDATA and preserved subtrees byte-identical, savings measured, entirely on this device.Data Formats & Conversion
  • XML Tree ViewerNavigate large XML as a collapsible tree — search names, see namespaces, copy any node's XPath, entirely on this device.Data Formats & Conversion
  • XPath TesterEvaluate an XPath 1.0 expression against your XML and see every matched node with its line and path — namespace prefixes bound explicitly, on this device.Data Formats & Conversion
  • XML DiffCompare two XML documents by structure — added, removed and changed elements, attributes and text, addressed by node path — entirely on this device.Data Formats & Conversion
  • XML Escape / UnescapeEscape text for XML element or attribute contexts — or unescape entities and character references — entirely on this device.Data Formats & Conversion
  • XML to JSON ConverterConvert XML to JSON — and back — with explicit attribute, array, and mixed-content semantics, entirely on this device.Data Formats & Conversion
  • XML to CSV ConverterTurn repeating XML records into CSV, TSV or an .xlsx workbook — you pick the row element — entirely on this device.Data Formats & Conversion
  • CSV to JSON ConverterConvert CSV to JSON or JSON to CSV — streaming to 100 MB, type-safe by default — entirely on this device.Data Formats & Conversion
  • CSV Editor & ViewerOpen a CSV in a grid, edit cells, rows and columns, then export it with your delimiter and quoting intact — entirely on this device.Data Formats & Conversion
  • CSV to SQL ConverterGenerate CREATE TABLE and batched INSERT statements from CSV or JSON, with dialect-correct quoting and escaping — entirely on this device.Data Formats & Conversion
  • CSV to Excel ConverterCSV to XLSX and back without Excel's mangling — leading zeros, IDs and dates survive, entirely on this device.Data Formats & Conversion
  • CSV to Markdown TableTurn CSV or TSV into a GitHub-ready Markdown pipe table — or paste a Markdown table and get CSV back — entirely on this device.Data Formats & Conversion
  • CSV to HTML TableTurn CSV or TSV into a semantic, injection-safe HTML table — or paste a table back and get CSV — entirely on this device.Data Formats & Conversion
  • CSV to TSV ConverterChange a CSV's delimiter to tab, semicolon, pipe or anything you type — re-quoted correctly, entirely on this device.Data Formats & Conversion
  • CSV ValidatorCheck a CSV against RFC 4180 and get every ragged row, stray quote and encoding problem with its row and column — on this device.Data Formats & Conversion
  • CSV Diff / CompareCompare two CSV exports row by row — added, removed and changed rows, cell-level detail, optional key-column match — entirely on this device.Data Formats & Conversion
  • Remove Duplicate Rows (CSV)Drop repeated CSV rows by whole row or chosen columns, then sort and filter what is left — header kept, counts shown, all on this device.Data Formats & Conversion
  • CSV Split & MergeSplit a CSV into parts by rows, part count or size — header repeated in every part — and merge exports back into one file, entirely on this device.Data Formats & Conversion
  • CSV Column ToolsPull one column out of a CSV as a plain list, or drop, reorder, rename and insert columns and download the new file — entirely on this device.Data Formats & Conversion
  • Excel Paste to JSON/MarkdownTurn a range copied from Excel, Google Sheets or Numbers into JSON or a Markdown table — entirely on this device.Data Formats & Conversion
  • TOML to JSON ConverterConvert TOML to JSON or JSON to TOML with tables, dotted keys and all four datetime types handled honestly — entirely on this device.Data Formats & Conversion
  • TOML to YAML ConverterConvert TOML to YAML or YAML to TOML with datetimes, nulls, anchors and comments all accounted for — entirely on this device.Data Formats & Conversion
  • Properties to YAML ConverterConvert .properties to nested YAML or YAML back to .properties — dotted keys, indexed lists and \uXXXX escapes handled honestly — entirely on this device.Data Formats & Conversion
  • Protobuf Wire DecoderDecode protobuf bytes with no .proto — field numbers, wire types and ranked value guesses, entirely on this device.Data Formats & Conversion
  • Avro Schema GeneratorPaste sample JSON, get a valid Avro .avsc — nullable unions with defaults and honest int-versus-long, entirely on this device.Data Formats & Conversion

Encoding & Escaping

  • Base64 EncoderConvert text or files to Base64 with correct Unicode handling — entirely on this device.Encoding & Escaping
  • Base64 DecoderDecode Base64 to text, bytes, or a downloadable file — tolerant of the real-world mess.Encoding & Escaping
  • Base64URL Encoder/DecoderEncode and decode RFC 4648 §5 URL-safe Base64 with JWT-strict padding control — entirely on this device.Encoding & Escaping
  • Base64 to Image ConverterPaste Base64 or a data: URI and see the image instantly — or turn an image file into copy-ready Base64 snippets, on this device.Encoding & Escaping
  • Base64 File ConverterDrop any file and stream it to Base64 with live progress — or turn Base64 back into a named, downloadable file, entirely on this device.Encoding & Escaping
  • Base64 to Hex ConverterPivot Base64 to hex and hex back to Base64 without a text detour — entirely on this device.Encoding & Escaping
  • Base32 Encoder/DecoderDecode and encode Base32 — RFC 4648, base32hex and Crockford, strict or tolerant — entirely on this device.Encoding & Escaping
  • Base58 Encoder/DecoderEncode and decode Base58 with the Bitcoin/IPFS alphabet — leading zeros preserved, entirely on this device.Encoding & Escaping
  • Hex Encoder/Decoder + Dump ViewerConvert bytes to hex and back, and inspect any file in a classic offset/hex/ASCII dump — entirely on this device.Encoding & Escaping
  • Binary Text ConverterTurn binary byte groups into text and text into binary — with decimal, octal and hex views — entirely on this device.Encoding & Escaping
  • URL Encoder/DecoderPercent-encode and decode URLs with the encodeURIComponent vs encodeURI difference made explicit — entirely on this device.Encoding & Escaping
  • HTML Entity Encoder/DecoderConvert characters to HTML entities and back — named, decimal or hex — with a searchable reference table, entirely on this device.Encoding & Escaping
  • HTML Context EscaperEscape a string for the HTML element, attribute, JavaScript or URL context — OWASP output-encoding rules applied per sink, entirely on this device.Encoding & Escaping
  • Punycode / IDN ConverterConvert xn-- domains to Unicode and back, label by label, with mixed-script flags — entirely on this device.Encoding & Escaping
  • Unicode Escape ToolEscape text to \uXXXX, \u{…}, \xXX, CSS, U+ or HTML hex notation and decode any mix of them back — entirely on this device.Encoding & Escaping
  • String Escaper (Multi-language)Escape or unescape a string literal for JSON, JavaScript, Java, C#, C, Python, SQL or POSIX shell — entirely on this device.Encoding & Escaping
  • ROT13 / Caesar CipherRotate text through ROT13, any Caesar shift, ROT5, ROT18 or ROT47 — with an all-25-shifts panel for unknown puzzles, entirely on this device.Encoding & Escaping
  • XOR Encoder / Brute-forcerApply a repeating XOR key to text, hex or Base64, or rank all 256 single-byte keys by printable ratio — entirely on this device.Encoding & Escaping
  • Morse Code TranslatorTranslate text to ITU Morse code and Morse back to text, with tolerant decoding and optional audio — entirely on this device.Encoding & Escaping
  • GZip / zlib ToolDecompress or compress gzip, zlib and raw DEFLATE streams — pastes or files, entirely on this device.Encoding & Escaping
  • Data URI GeneratorTurn any file or text into a self-contained data: URI — MIME sniffed or chosen, Base64 or percent-encoded, entirely on this device.Encoding & Escaping

Hashing & Checksums

  • MD5 Hash GeneratorCompute MD5 checksums of text, hex or Base64 bytes and files up to 64 MB — entirely on this device.Hashing & Checksums
  • SHA-1 Hash GeneratorCompute the SHA-1 digest of text, hex or Base64 bytes — entirely on this device.Hashing & Checksums
  • SHA-256 Hash GeneratorCompute the SHA-256 digest of text or a file — hex and Base64, entirely on this device.Hashing & Checksums
  • SHA-384/512 Hash GeneratorCompute the SHA-512 or SHA-384 digest of text or raw bytes — hex and Base64, entirely on this device.Hashing & Checksums
  • SHA-3 / Keccak GeneratorSee the SHA-3 and Keccak digests of the same bytes side by side — including Ethereum keccak256, computed entirely on this device.Hashing & Checksums
  • CRC CalculatorCompute CRC32, CRC16 or CRC8 with any polynomial, init, reflection and xorout — entirely on this device.Hashing & Checksums
  • File Checksum VerifierDrop a file, paste the published checksum, get a MATCH or MISMATCH verdict — multi-GB downloads verified entirely on this device.Hashing & Checksums
  • Multi-hash GeneratorHash one input with 16 algorithms at once — MD5 to BLAKE3 — and see which rows match a digest you already hold, entirely on this device.Hashing & Checksums
  • HMAC GeneratorCompute HMAC-SHA-256 and family with the key and message decoded exactly as your API sees them — entirely on this device.Hashing & Checksums
  • Hash IdentifierPaste a hash and see every algorithm it could be — prefixes parsed, parameters read, ambiguity shown honestly.Hashing & Checksums

Passwords & Credentials

  • Bcrypt Generator + VerifierGenerate bcrypt hashes at any cost factor and check a password against an existing hash — the password never leaves this device.Passwords & Credentials
  • Argon2 Generator + VerifierHash a password with Argon2id at tunable memory, time and parallelism — or verify an existing hash, on this device.Passwords & Credentials
  • Htpasswd GeneratorBuild .htpasswd lines for Apache or Nginx basic auth — bcrypt, APR1 or SHA-1, hashed on this device.Passwords & Credentials
  • Password GeneratorGenerate provably unbiased, cryptographically secure passwords — on a page that stores nothing and sends nothing.Passwords & Credentials
  • Passphrase Generator (Diceware)Build a memorable passphrase from the EFF long wordlist — with the exact entropy, not a colour-coded guess.Passwords & Credentials
  • Password Strength CheckerSee exactly why a password scores the way it does — named rules, live entropy and an offline crack-time estimate, all on this device.Passwords & Credentials
  • Pwned Password CheckHash a password to its SHA-1 prefix and match a Pwned Passwords range response — entirely on this device.Passwords & Credentials
  • API Key & PIN GeneratorGenerate prefixed API keys and numeric PINs by the batch — on a page that stores nothing and sends nothing.Passwords & Credentials

OTP & 2FA

  • TOTP Generator / DebuggerPaste a Base32 secret and see the live RFC 6238 code, the drift window and every step of the math — on this device only.OTP & 2FA

IDs & Randomness

  • UUID v4 GeneratorGenerate one or 100,000 random v4 UUIDs in every notation a codebase demands — entirely on this device.IDs & Randomness
  • UUID v7 GeneratorGenerate time-sortable v7 UUIDs in bulk — the embedded timestamp decoded live, entirely on this device.IDs & Randomness
  • UUID v1 GeneratorGenerate v1 UUIDs in bulk with timestamp, clock sequence and node decoded live — entirely on this device.IDs & Randomness
  • UUID v3 GeneratorDerive deterministic v3 UUIDs from namespace + name via MD5 for legacy interop — same inputs, same UUID, entirely on this device.IDs & Randomness
  • UUID v5 GeneratorDerive deterministic v5 UUIDs from namespace + name via SHA-1 — the RFC-preferred name-based version, entirely on this device.IDs & Randomness
  • UUID v6 GeneratorGenerate time-sortable v6 UUIDs — v1's fields reordered for index locality, decoded live, entirely on this device.IDs & Randomness
  • UUID Decoder / InspectorPaste any UUID and read its version, variant and embedded timestamp — every notation accepted, entirely on this device.IDs & Randomness
  • GUID GeneratorGenerate .NET-style GUIDs in bulk — uppercase {braces}, registry form and copy-ready C# snippets, entirely on this device.IDs & Randomness
  • ULID Generator + DecoderGenerate time-sortable ULIDs — bulk, monotonic, Crockford base32 — and decode any ULID’s timestamp, entirely on this device.IDs & Randomness
  • Snowflake ID Generator + DecoderDecode a Snowflake ID to its timestamp, worker and sequence, or generate one for the Twitter or Discord epoch — entirely on this device.IDs & Randomness
  • MongoDB ObjectId GeneratorGenerate valid 24-hex MongoDB ObjectIds and decode any ObjectId to its embedded timestamp and BSON structure — entirely on this device.IDs & Randomness
  • Random String GeneratorGenerate cryptographically secure random strings, tokens and raw bytes — on a page that stores nothing and sends nothing.IDs & Randomness
  • Random Number GeneratorGenerate random numbers, roll dice, or shuffle and pick from a list — unbiased and entirely on this device.IDs & Randomness
  • ID Format Comparison HubCompare UUID, ULID, Snowflake and ObjectId on size, sortability, timestamps and use cases — with live samples, entirely on this device.IDs & Randomness

JWT & Tokens

  • JWT DecoderDecode any JWT into header, payload and a plain-language claims table — expiry checked live, zero third-party code on this page.JWT & Tokens
  • JWT VerifierCheck a JWT's signature against your own key — HS, RS, ES, PS or EdDSA — with claim and clock-skew checks, entirely on this device.JWT & Tokens
  • JWT Generator / SignerBuild a header and payload, sign with your own key, and copy the token — the key never leaves this tab.JWT & Tokens
  • JWK GeneratorGenerate a key and get a proper JWK — alg, use and an RFC 7638 kid already stamped, with the JWKS wrapper you actually deploy.JWT & Tokens
  • PEM to JWK ConverterPaste a PEM key or certificate, get a JWK with alg, use and kid stamped — and back again, entirely on this device.JWT & Tokens

PKI Certificates & SSH

  • Certificate DecoderRead what a certificate actually says — who it is for, when it expires, and every extension — without it leaving your device.PKI Certificates & SSH
  • CSR DecoderDecode a PKCS#10 request — subject, key, requested SANs and attributes — and see what a CA will reject, entirely on this device.PKI Certificates & SSH
  • RSA Key GeneratorGenerate an RSA, EC or Ed25519 keypair in your browser and download it as PKCS#8 and SPKI PEM.PKI Certificates & SSH
  • ASN.1 DecoderRead any DER or BER blob as a tag, length and offset tree beside a synchronized hex view — entirely on this device.PKI Certificates & SSH
  • SSH Key GeneratorGenerate an SSH keypair on this device and copy the exact two artifacts SSH consumes: the authorized_keys line and the openssh-key-v1 file.PKI Certificates & SSH

Encryption & PGP

  • AES Encrypt / DecryptEncrypt or decrypt text and files with AES-GCM, CBC or CTR — the passphrase and the data never leave this device.Encryption & PGP
  • RSA Encrypt / DecryptEncrypt a short message with an RSA public key and decrypt it with the private key — RSA-OAEP, entirely on this device.Encryption & PGP

Web Security

  • CSP GeneratorBuild a Content-Security-Policy directive by directive — with real nonce and hash sources, a Report-Only toggle and the server snippet for it.Web Security
  • CSP EvaluatorPaste a policy and read what the browser will enforce, what it will ignore, and every weakness it leaves open — each finding with its CSP Level 3 clause.Web Security
  • Security Headers ExplainerPaste a response header block and read its security posture header by header — present, missing or weak, each verdict citing its spec.Web Security
  • SRI Hash GeneratorHash a script or stylesheet and get the integrity= attribute the browser checks — computed on this device, never uploaded.Web Security
  • CORS TesterDescribe the request, paste the response headers, and see exactly which CORS check the browser fails — on this device.Web Security
  • CORS Header GeneratorEmit a complete CORS configuration for nginx, Apache, Express or Caddy — preflight, Vary: Origin and credentials handled — or read the headers you already have.Web Security

SAML OAuth & OIDC

  • SAML DecoderPaste a SAML blob from a browser trace and read it — both bindings auto-detected, assertion semantics extracted, entirely on this device.SAML OAuth & OIDC
  • PKCE GeneratorMint a PKCE code_verifier and its S256 code_challenge on this device — RFC 7636 lengths, and a verify mode for a pair you already have.SAML OAuth & OIDC

Regex

  • Regex Tester (JavaScript)Test JavaScript regular expressions live — highlighted matches, groups and replace preview, entirely on this device.Regex
  • Regex ExplainerRead someone else's JavaScript regular expression token by token — every group, quantifier and flag spelled out, entirely on this device.Regex
  • Regex VisualizerSee the shape of a regular expression: branches, loops and groups drawn as a railroad diagram you can download as SVG — entirely on this device.Regex
  • Regex Patterns LibraryBrowse copy-paste regex patterns — pragmatic and strict variants, CI-verified match tables and six-language usage for each.Regex
  • Email RegexThe email regex that tells the truth — pragmatic and RFC 5321 strict variants, fifteen CI-verified rows and the live tester preloaded.Regex
  • Phone Number RegexThe E.164 phone regex pair — an optional-plus gate and the strict international form, with honest libphonenumber advice and live testing.Regex
  • IP Address RegexOctet-accurate IPv4 matching — 999.1.1.1 fails; leading-zero-tolerant and canonical variants with CI-verified rows and the live tester.Regex
  • URL RegexA pragmatic http(s) link gate and a strict host-checking variant — CI-verified match rows, six language spellings, live tester preloaded.Regex
  • Date Regex (YYYY-MM-DD)The ISO date shape gate plus a range-checking strict variant — honest about calendars, CI-verified, preloaded in the live tester.Regex
  • Numbers-Only RegexDigits-only validation settled — the five-character gate plus a canonical-integer strict variant, CI-verified rows and live testing.Regex
  • Password RegexLookahead password policies explained honestly — 8-plus and strict 12-plus four-class gates, NIST caveats, safe on-device testing.Regex
  • UUID RegexUUID validation by layout and by meaning — a case-insensitive 8-4-4-4-12 gate plus a version-and-variant strict form, CI-verified.Regex
  • IPv6 RegexFull-form and ::-compressed IPv6 matching per RFC 4291 — the library's honest inversion, CI-verified rows, live tester preloaded.Regex
  • Regex Cheat SheetLook up any JavaScript regex construct — syntax, meaning and a worked example whose result this page computes, with the tester right above the table.Regex
  • Regex Replace & ExtractRun your own pattern over a whole body of text — replace across it, extract every match, or keep only matching lines, entirely on this device.Regex

Time, Date & Scheduling

  • Cron Expression Parser / ExplainerExplain any cron expression in plain English — per-field validation and the next 10 runs in any timezone, with DST flags — entirely on this device.Time, Date & Scheduling
  • Cron Expression GeneratorPick minutes, hours and days visually and get a correct cron expression with plain-English read-back — entirely on this device.Time, Date & Scheduling
  • Quartz Cron ToolParse and build Quartz cron expressions — seconds, year field, ? L W # tokens — with next fire times in any timezone, entirely on this device.Time, Date & Scheduling
  • AWS EventBridge Cron ToolValidate AWS cron() and rate() schedules with EventBridge's real rules — ? required, 1 = Sunday, UTC firing — entirely on this device.Time, Date & Scheduling
  • Jenkins Cron ToolValidate and explain Jenkins build schedules — H hash tokens, aliases and TZ lines — with honest run windows, entirely on this device.Time, Date & Scheduling
  • Spring Cron ToolParse and validate Spring @Scheduled 6-field cron — seconds first, ? equals *, 0 or 7 = Sunday — with next runs in any timezone, entirely on this device.Time, Date & Scheduling
  • Systemd OnCalendar ConverterTurn a crontab schedule into systemd OnCalendar syntax with a ready-to-install .timer unit — entirely on this device.Time, Date & Scheduling
  • Cron Examples LibraryBrowse copy-paste cron schedules — live next runs and Quartz, AWS, Kubernetes and GitHub Actions forms for each.Time, Date & Scheduling
  • Cron Every 5 MinutesThe five-minute cron line ready to paste — */5 * * * * with live next runs and the Quartz, AWS, Kubernetes and GitHub Actions forms beside it.Time, Date & Scheduling
  • Cron Every 30 MinutesHalf-hourly cron settled — */30 * * * * with live next runs, the 0,30 twin spelling, and every scheduler dialect on one page.Time, Date & Scheduling
  • Cron Every HourTop-of-hour cron at a glance — 0 * * * * with live next runs, the @hourly macro, and each dialect's form ready to copy.Time, Date & Scheduling
  • Cron Every Day at MidnightThe daily midnight line — 0 0 * * * with live next runs, whose-midnight caveats and all four dialect forms ready to paste.Time, Date & Scheduling
  • Cron Every MondayMonday cron without numbering doubt — 0 0 * * 1 previewed live, with the Sunday-first dialects called out explicitly.Time, Date & Scheduling
  • Cron Every Weekday at 9amWeekday-morning cron — 0 9 * * 1-5 with live next runs, the whose-9am question answered honestly, and every dialect form.Time, Date & Scheduling
  • Cron First of the MonthMonth-start cron — 0 0 1 * * with live next runs, the @monthly macro and each scheduler's spelling ready to copy.Time, Date & Scheduling
  • Cron Last Day of the MonthNo classic one-liner exists — the honest 28–31 date-guard recipe with live next runs, plus the Quartz and EventBridge L forms.Time, Date & Scheduling
  • Cron Every 90 MinutesNinety minutes takes two cron lines — the exact interleaved pair with live next runs, or one EventBridge rate rule.Time, Date & Scheduling
  • Crontab File ValidatorLint an entire crontab file — env lines, schedules, % gotchas, missing trailing newline — with per-line errors, entirely on this device.Time, Date & Scheduling
  • Cron Timezone ConverterConvert a cron schedule to another timezone — DST handled honestly with dated dual expressions, entirely on this device.Time, Date & Scheduling
  • Unix Timestamp ConverterConvert epoch timestamps to human dates and back — unit auto-detected, exact to the nanosecond, entirely on this device.Time, Date & Scheduling
  • ISO 8601 / RFC 3339 FormatterPaste any date or epoch and read it in every standard form at once — offset decoded, standards checked, entirely on this device.Time, Date & Scheduling
  • Timezone ConverterConvert a date and time between timezones and line up a meeting across cities — DST-aware, entirely on this device.Time, Date & Scheduling
  • Date Difference CalculatorCount the days between two dates — both conventions labeled, inclusive and exclusive — with weekday-only counts and a calendar breakdown, entirely on this device.Time, Date & Scheduling
  • Time Duration CalculatorTurn hh:mm:ss, unit words or ISO 8601 durations into every unit at once — or sum a whole list — entirely on this device.Time, Date & Scheduling
  • Week Number ToolSee the ISO week number for today or any date — US convention beside it — and turn a week number back into its Monday–Sunday dates, on this device.Time, Date & Scheduling
  • Date Add / Subtract CalculatorShift a date by years, months, weeks, days, hours or minutes — end-of-month clamping stated, never guessed — entirely on this device.Time, Date & Scheduling
  • Age CalculatorExact age in years, months and days from a date of birth — Feb 29 and month-end policies stated, never silently picked — entirely on this device.Time, Date & Scheduling
  • Strftime / Format Cheat SheetEvery strftime token with an engine-rendered example, portability columns and a live format preview — entirely on this device.Time, Date & Scheduling
  • Working Days / SLA CalculatorWorking-day counts and SLA deadlines over a calendar you control — weekend sets, paste-in holiday lists, counting conventions stated — entirely on this device.Time, Date & Scheduling
  • Discord Timestamp GeneratorTurn a date, epoch or pasted <t:…> code into all seven Discord timestamp styles — previewed in your zone, entirely on this device.Time, Date & Scheduling

Web & HTTP

  • HTTP Status Codes ReferenceEvery HTTP status code with its meaning, RFC citation, cacheability and handler snippets — searchable instantly, entirely on this device.Web & HTTP
  • HTTP Headers ReferenceEvery HTTP header field with its status, RFC clause and direction — plus builders for Cache-Control, CSP, HSTS and CORS values, all on this device.Web & HTTP
  • Curl to Code ConverterPaste a curl command and read back idiomatic client code in 12 languages — parsed on this device, with every unsupported flag named.Web & HTTP
  • Curl Command BuilderTurn a form into a correct curl command — POSIX-quoted values, per-flag explanations, and a round-trip check — entirely on this device.Web & HTTP
  • HAR File ViewerOpen a .har capture and read the waterfall, per-phase timings, sizes and failures — the file never leaves this device.Web & HTTP
  • URL Parser / InspectorSee every component of any URL — host in punycode and Unicode, decoded query table, homograph check — entirely on this device.Web & HTTP
  • Query String to JSONTurn any query string into structured JSON and back — bracket nesting, array conventions and + handling made explicit — entirely on this device.Web & HTTP
  • User-Agent ParserDecode any user-agent string — or 100,000 log lines — into browser, OS and device fields with bots called out, entirely on this device.Web & HTTP
  • What Is My User AgentSee the user-agent string this browser sends, parsed into browser, OS and device — with screen, locale and Client Hints, read on this device.Web & HTTP
  • MIME Type LookupFind the right Content-Type for any file extension — every known extension, compressibility and copyable server config, straight from mime-db.Web & HTTP
  • Basic Auth Header GeneratorBuild the exact Authorization: Basic line from a username and password — or read one back — with RFC 7617 checks on this device.Web & HTTP

Network, DNS & IP

  • DNS LookupLook up a domain's DNS records from the browser: you run the named resolver's request yourself, and the answer is decoded here.Network, DNS & IP
  • DMARC Record GeneratorCompose or check DMARC, SPF and DKIM records with the risky terms named and the SPF lookup count shown — on this device, with nothing resolved.Network, DNS & IP
  • IPv4 Subnet CalculatorEvery subnet number from one IP and prefix — with the binary math shown, and /31 and /32 handled correctly — entirely on this device.Network, DNS & IP
  • Visual Subnet CalculatorSplit any IPv4 block into a tree, join siblings back, and see what each cloud provider actually reserves — entirely on this device.Network, DNS & IP
  • MAC Address Vendor LookupPaste a MAC in any notation and get the IEEE-registered assignee, the block that covers it, and an honest answer when no vendor exists — on this device.Network, DNS & IP
  • Port Number ReferenceType a port number and see every service the IANA registry lists for it across TCP, UDP and SCTP — plus what really runs there.Network, DNS & IP

CSS Tools

  • CSS Gradient GeneratorCompose linear, radial and conic gradients with multi-stop editing and copy modern CSS — entirely on this device.CSS Tools
  • Box Shadow GeneratorCompose layered CSS box-shadows with live light and dark preview and a smooth-shadow wizard — entirely on this device.CSS Tools
  • Border Radius GeneratorDesign asymmetric 8-value corners and organic blob shapes against a live preview and copy working CSS — entirely on this device.CSS Tools
  • Clip-path GeneratorDraw a clip-path with draggable points on a live preview and copy the CSS — entirely on this device.CSS Tools
  • Glassmorphism GeneratorDesign frosted-glass CSS with live backdrop blur over a busy preview — entirely on this device.CSS Tools
  • Cubic Bezier GeneratorDrag an easing curve, preview the motion and copy cubic-bezier() — plus a modern linear() spring & bounce generator — on this device.CSS Tools
  • CSS Animation GeneratorBuild a @keyframes timeline, tune the animation shorthand and preview it live, then copy working CSS — entirely on this device.CSS Tools
  • Flexbox Playground / GeneratorToggle every flexbox container and item property against a live preview and copy working CSS — entirely on this device.CSS Tools
  • Grid Generator / PlaygroundBuild grid tracks and named template areas against a live preview and copy working CSS — entirely on this device.CSS Tools
  • Aspect Ratio CalculatorReduce any width and height to its simplest ratio and copy modern aspect-ratio CSS — entirely on this device.CSS Tools
  • Px to Rem ConverterPx ↔ rem at any root font size — single values, whole CSS blocks, and a live 1–100 px table — entirely on this device.CSS Tools
  • CSS clamp() CalculatorTurn min and max sizes at two viewports into a correct rem-based clamp() expression, with the math shown — entirely on this device.CSS Tools
  • Fluid Type Scale GeneratorTurn a base size, viewport range and modular ratio into a fluid clamp() type scale, exported as CSS custom-property tokens — entirely on this device.CSS Tools
  • Font Stack GeneratorPick a system or web-safe font stack, preview it in your own fonts, and copy a font-family value with a guaranteed fallback — entirely on this device.CSS Tools
  • CSS FormatterFormat messy or minified CSS, SCSS or LESS to editor-consistent Prettier output — entirely on this device.CSS Tools
  • CSS MinifierMinify CSS with an honest size report — raw, minified and gzip bytes — entirely on this device.CSS Tools
  • CSS ValidatorValidate CSS and see syntax errors, unknown properties and bad values with line and column — entirely on this device.CSS Tools
  • CSS Specificity CalculatorSee the (a,b,c) specificity of any selector, compare two to learn which wins, with a per-token breakdown — entirely on this device.CSS Tools
  • CSS to Tailwind ConverterPaste CSS and map each declaration to Tailwind utility classes, with every unmapped declaration listed honestly — entirely on this device.CSS Tools
  • CSS StatsAnalyze a whole stylesheet on this device: rule, selector and declaration counts, a specificity graph, unique colors and font sizes, and !important totals.CSS Tools

Color Tools

  • Color ConverterPaste any CSS color and read every notation at once — HEX, RGB, HSL, OKLCH, LAB and more — entirely on this device.Color Tools
  • OKLCH Picker / ConverterPick perceptual OKLCH colors and watch the sRGB and Display-P3 gamut boundaries instead of discovering the clip later — entirely on this device.Color Tools
  • Contrast CheckerCheck any two colors against the WCAG 2 contrast ratios for normal text, large text and UI components — entirely on this device.Color Tools
  • APCA Contrast CheckerCompute the APCA Lc value for a text and background pair, with polarity, the font size and weight lookup, and the WCAG 2 ratio beside it — entirely on this device.Color Tools
  • Tints & Shades Scale GeneratorTurn one brand color into an even 50–950 shade ramp interpolated in OKLCH — entirely on this device.Color Tools
  • Color Blindness SimulatorPreview a palette or an image as protanopia, deuteranopia and tritanopia render it — entirely on this device.Color Tools
  • Image Palette ExtractorExtract the dominant colors from any image with share percentages, plus a pixel-exact eyedropper — entirely on this device.Color Tools
  • Named CSS Colors ReferenceAll 148 CSS named colors with hex, rgb, hsl and oklch, plus contrast against white and black — entirely on this device.Color Tools

SVG Tools

  • SVG OptimizerRun SVGO with every toggle explained, measured before/after bytes and a real diff — entirely on this device.SVG Tools
  • SVG to JSX ConverterTurn SVG markup into a React or React Native component — attributes mapped, nothing uploaded.SVG Tools
  • SVG to CSS EncoderEncode an SVG into a url() data URI for background-image, mask-image or a custom property — url-encoded, xmlns-checked, entirely on this device.SVG Tools
  • SVG Viewer and EditorSee any SVG render beside its markup — viewBox and aspect ratio resolved, every script, handler and external reference named, entirely on this device.SVG Tools
  • SVG to PNG ConverterRasterize SVG markup to a PNG at any size, scale or background — rendered by your own browser, never uploaded.SVG Tools
  • Blob GeneratorGenerate a seeded SVG blob, wave or pattern and copy the exact markup — entirely on this device.SVG Tools

HTML & Markup

  • HTML FormatterPretty-print messy or minified HTML into clean, editor-consistent Prettier output — entirely on this device.HTML & Markup
  • HTML MinifierCollapse the whitespace a browser ignores while the whitespace it renders survives — pre, textarea and inline-tag gaps intact, every removal listed and measured.HTML & Markup
  • HTML Entities ReferenceFind the HTML code for any symbol — the named reference, its Unicode name, and its decimal and hex spellings, entirely on this device.HTML & Markup
  • Meta Tag GeneratorBuild a paste-ready <head> block — title, description, canonical and robots — with conflict checks, entirely on this device.HTML & Markup
  • Open Graph PreviewCompose Open Graph and Twitter card tags and preview the card locally — nothing is fetched, nothing uploaded.HTML & Markup
  • HTML Table GeneratorLay out a table in a grid and get accessible markup — captions, header scopes and spans — entirely on this device.HTML & Markup
  • HTML to JSX ConverterTurn HTML into a React component or a Pug template — attributes mapped to React props, entirely on this device.HTML & Markup
  • HTML to Text ConverterTurn HTML into readable plain text with block structure preserved and entities decoded — entirely on this device.HTML & Markup
  • Schema Markup GeneratorFill a typed form and get a valid JSON-LD script block for eight schema.org types, with required fields checked — entirely on this device.HTML & Markup

JavaScript & TypeScript

  • JavaScript BeautifierBeautify messy or minified JavaScript and JSX into clean, editor-consistent Prettier output — entirely on this device.JavaScript & TypeScript
  • JS MinifierMinify JavaScript with Terser and read an honest size report — original, minified and gzip bytes — entirely on this device.JavaScript & TypeScript
  • JavaScript ObfuscatorObfuscate JavaScript to deter casual reading — not encryption — entirely on this device.JavaScript & TypeScript
  • TypeScript to JavaScriptStrip TypeScript types to plain JavaScript as you type — interfaces, generics and annotations gone, your syntax untouched — entirely on this device.JavaScript & TypeScript
  • Keycode / KeyboardEvent InspectorPress any key to see event.key, event.code and legacy keyCode with location and modifier state — entirely on this device.JavaScript & TypeScript
  • Big-O Cheat SheetLook up the time and space complexity of every common data structure and sorting algorithm — best, average and worst case, entirely on this device.JavaScript & TypeScript

Favicons & App Icons

  • Favicon GeneratorTurn one image into the complete modern favicon set — ICO, SVG, Apple touch and PWA icons, manifest and HTML — entirely on this device.Favicons & App Icons
  • Favicon from Text / EmojiType a letter or emoji, pick shape and colors, and download the complete modern favicon set — generated entirely on this device.Favicons & App Icons
  • Web Manifest GeneratorFill in name, colors, display mode and icons and get a valid site.webmanifest plus the link tag — built entirely on this device.Favicons & App Icons
  • App Icon Set GeneratorDrop one 1024px image and download every iOS and Android icon size — Contents.json and mipmap folders included, nothing uploaded.Favicons & App Icons

Server Config & SEO Files

  • Robots.txt Tester (Paste)Check whether a URL is allowed or blocked for any crawler by pasted robots.txt rules — with the deciding rule quoted, entirely on this device.Server Config & SEO Files
  • Robots.txt GeneratorCompose robots.txt groups, paths and sitemap lines from a form, then read the parser's report on the emitted file before you copy it — entirely on this device.Server Config & SEO Files
  • Llms.txt GeneratorBuild an llms.txt index for your site — title, summary and curated link sections — entirely on this device.Server Config & SEO Files
  • Htaccess Redirect GeneratorBuild .htaccess redirect rules — bulk 301/302 maps plus HTTPS, www and trailing-slash canonicals — with paths escaped and rule order checked.Server Config & SEO Files
  • Ads.txt Generator & ValidatorGenerate and validate IAB Tech Lab compliant Authorized Digital Sellers (ads.txt) files — entirely on this device.Server Config & SEO Files
  • Caddyfile GeneratorGenerate modern Caddy web server configurations with automated HTTPS, reverse proxy forwarding, compression, and security headers.Server Config & SEO Files

Docker

  • Docker Run to Compose ConverterConvert docker run commands into a modern compose.yaml with a flag-by-flag conversion report — entirely on this device.Docker
  • Compose to Docker Run ConverterTurn compose services back into docker run commands with a flag-by-flag conversion report — entirely on this device.Docker
  • Compose to Kubernetes ConverterConvert a compose file into Kubernetes manifests with Kompose-compatible semantics — entirely on this device.Docker
  • Dockerfile LinterLint a Dockerfile against 27 hadolint-compatible rules with line-anchored findings — entirely on this device.Docker
  • Dockerfile GeneratorPick a stack, choose the options, get a commented multi-stage Dockerfile — entirely on this device.Docker
  • Dockerignore GeneratorGenerate clean, production-shaped .dockerignore files with stack presets to shrink build contexts and protect secrets.Docker
  • Compose Validator / FormatterValidate and format compose.yaml against the official compose-spec schema — entirely on this device.Docker
  • Docker Healthcheck GeneratorGenerate robust Dockerfile HEALTHCHECK and docker-compose health probes with presets for Node, Postgres, Redis, and MySQL — entirely in your browser.Docker
  • Docker EXPOSE vs Ports ExplainerUnderstand container port exposure, host publishing (-p), interface binding, and firewall implications — entirely on this device.Docker
  • Docker Image Name Parser & FormatterParse, decompose, and format OCI and Docker image references into canonical registry, namespace, and tag components — entirely on this device.Docker

Kubernetes

  • Kubernetes CronJob HelperEdit a CronJob schedule with a live plain-English readout, timezone-aware next runs and a ready-to-apply manifest — entirely on this device.Kubernetes
  • Kubernetes Manifest GeneratorFill a guided form, get schema-validated Deployment, Service and Ingress YAML — entirely on this device.Kubernetes
  • Kubernetes YAML ValidatorCheck manifests against strict per-kind Kubernetes schemas with line-anchored findings — entirely on this device.Kubernetes
  • Kubernetes Resource CalculatorTurn usage numbers into requests, limits and quota YAML with the QoS class explained — entirely on this device.Kubernetes
  • Kubernetes RBAC Viewer & Role BuilderVisualize Kubernetes Role and ClusterRole permissions as a security matrix or build least-privilege RBAC YAML safely in your browser.Kubernetes
  • Kubectl Command BuilderCompose kubectl commands task-first and keep the cheat sheet at hand — entirely on this device.Kubernetes
  • Kubernetes Secret Base64 ToolEncode and decode Secret values with the YAML wrapper handled and the newline trap defused — entirely on this device.Kubernetes
  • API Deprecation CheckerFind deprecated apiVersions in pasted manifests and get the exact replacement — entirely on this device.Kubernetes
  • Pod QoS Class CheckerDeduce Kubernetes QoS classes (Guaranteed, Burstable, BestEffort) and node eviction priorities from container resource specs — entirely on this device.Kubernetes
  • Kubernetes Taints & Tolerations SimulatorSimulate pod scheduling against tainted nodes, verify matching logic, and output clean toleration YAML — entirely on this device.Kubernetes
  • Pod CIDR PlannerPlan Kubernetes Cluster Pod CIDR topologies, calculate max node capacity, subnet slices, and address exhaustion limits — entirely on this device.Kubernetes
  • Kubernetes Label Selector TesterTest equality-based and set-based Kubernetes label selector queries against pod metadata with matched resource breakdowns — entirely on this device.Kubernetes

Git & Version Control

  • Git Undo Commit & Command BuilderPick the task, get the exact git command — with safety labels and a verify step.Git & Version Control
  • Gitignore GeneratorMulti-select your stacks and get one merged, deduplicated .gitignore — with every rule explained, not just dumped.Git & Version Control
  • Conventional Commits HelperCompose a spec-correct Conventional Commits message from a form — or paste one and lint it with commitlint-compatible checks.Git & Version Control
  • Semver ToolkitValidate versions, compare precedence, test npm ranges — caret vs tilde made explicit — and calculate bumps.Git & Version Control
  • Changelog GeneratorPaste git log output, get a grouped CHANGELOG.md section — Conventional Commits sorted into Features, Fixes and Breaking Changes.Git & Version Control
  • Git Config GeneratorGenerate an optimized .gitconfig with identity, default branch, pull rebase, and time-saving aliases.Git & Version Control
  • Gitattributes GeneratorGenerate cross-platform .gitattributes configurations with normalized line endings, Git LFS tracking, and binary guards.Git & Version Control
  • Git Branch Naming Rule Builder & ValidatorCompose and validate git branch names against team conventions and git-check-ref-format syntax rules — entirely on this device.Git & Version Control
  • Git URL ConverterConvert Git repository URLs instantly between SSH, HTTPS, and Web formats with organization and repository parsing.Git & Version Control

CI/CD

  • GitHub Actions Cron HelperCompose a correct on.schedule cron for GitHub Actions — local time to UTC, DST duality, next runs and YAML — entirely on this device.CI/CD
  • GitHub Actions Workflow GeneratorCompose a workflow YAML from triggers, a stack preset and jobs — with GitHub's real constraints checked as you build.CI/CD
  • GitLab CI Generator / ValidatorBuild a .gitlab-ci.yml from stages, jobs and rules — or paste yours and validate it against the GitLab CI schema.CI/CD
  • Dependabot Config GeneratorBuild a valid dependabot.yml — ecosystems, directories, schedules, groups and ignore rules — without memorizing the options reference.CI/CD
  • CI Workflow Validator (Multi-CI)Paste a CI workflow and validate it against its vendored SchemaStore schema — GitHub Actions, GitLab CI, CircleCI and more.CI/CD
  • CODEOWNERS File GeneratorBuild production-grade CODEOWNERS files for GitHub, GitLab, and Bitbucket with path rules and team handles — entirely on this device.CI/CD
  • Pre-Commit Config GeneratorBuild production-grade .pre-commit-config.yaml hook configurations with curated multi-language presets — entirely on this device.CI/CD

Linux & CLI

  • Chmod CalculatorConvert file permissions between checkbox, octal and symbolic forms, decode ls -l strings, and copy the exact chmod command — entirely on this device.Linux & CLI
  • Systemd Unit GeneratorFill in what your service does and get a .service unit with each directive explained and cited — built entirely on this device.Linux & CLI
  • Sed TesterWrite a sed script, paste your text, and watch every address, substitution and hold-space command run on this device.Linux & CLI
  • Awk TesterRun real awk on your own text in this tab — fields, BEGIN/END, printf and arrays, with stdout, stderr and the exit code shown.Linux & CLI
  • Tar Command BuilderPick the task and get the exact tar command — quoted for POSIX shells, with bsdtar and GNU tar shown separately where they differ.Linux & CLI
  • Find Command BuilderDescribe what you are looking for and get the find command, with every predicate explained and the destructive actions marked.Linux & CLI
  • Rsync Command BuilderPick the sync you mean and get the rsync command — the -a flags spelled out, the dangerous ones marked, and a dry run offered first.Linux & CLI
  • FFmpeg Command BuilderPick the job — convert, extract audio, scale, trim, GIF, compress or strip metadata — and copy the ffmpeg command; nothing is transcoded on this page.Linux & CLI
  • OpenSSL Command BuilderPick a PKI job and read off the exact openssl line — every flag explained, quoting handled, and nothing executed on this page.Linux & CLI
  • Bash Parameter Expansion ExplainerEvery ${…} form — defaults, substrings, pattern removal, substitution — with what it does, which bash added it, and a worked example.Linux & CLI
  • Exit Code & Signal ReferenceYour process exited 137 — this page says what killed it, how the 128+N signal band works, and where macOS and Linux numbering differs.Linux & CLI
  • Bash getopts Script BuilderScaffold POSIX-compliant, error-hardened Bash CLI scripts with getopts option parsing and help menus — entirely on this device.Linux & CLI
  • Bash Test Operators ReferenceInteractive reference for Bash conditional test operators: file, string, and integer comparisons in [ ... ] and [[ ... ]].Linux & CLI
  • ANSI Color Codes & Terminal FormatterInteractive ANSI escape sequence generator for terminal styling, 16/256/TrueColor palettes, and code snippets — entirely on this device.Linux & CLI
  • Linux Sysctl & Ulimit Tuner ReferenceInteractive kernel tunables reference for sysctl.conf and limits.conf covering network performance and memory — entirely on this device.Linux & CLI
  • SSHD Hardening Config GeneratorGenerate production-grade, CIS and Mozilla compliant OpenSSH server (sshd_config) hardening configurations.Linux & CLI
  • Linux /etc/fstab Generator & ValidatorGenerate and validate Linux /etc/fstab mount entries with persistent UUIDs, mount options, and boot safety linting — entirely on this device.Linux & CLI
  • Linux iptables & UFW Rule GeneratorGenerate secure iptables, UFW, and nftables firewall rules with stateful connection tracking and rate limiting — entirely on this device.Linux & CLI
  • SSH / SCP Command BuilderConstruct syntactically validated, flag-optimized SCP and Rsync remote copy commands with port, key, and protocol options — entirely on this device.Linux & CLI

SQL & Databases

  • SQL FormatterPretty-print or minify SQL across 13 dialects with configurable style — entirely on this device.SQL & Databases
  • SQL to ER DiagramTurn CREATE TABLE DDL into a crow's-foot ER diagram — keys, foreign-key cardinality and SVG export, entirely on this device.SQL & Databases
  • Connection String BuilderBuild or parse PostgreSQL, MySQL, MongoDB, Redis, SQL Server and JDBC connection strings with correct percent-encoding — entirely on this device.SQL & Databases
  • SQLite Viewer / PlaygroundOpen a .sqlite file, browse tables and run real SQL in your browser — SQLite compiled to WebAssembly, nothing uploaded.SQL & Databases
  • SQL-on-CSV Workbench (DuckDB)Run real SQL on CSV and Parquet files in your browser with DuckDB — joins, group-bys and window functions, nothing uploaded.SQL & Databases
  • SQL Syntax CheckerCheck SQL syntax per dialect — unbalanced quotes, clause order and dialect slips flagged with line and column, entirely on this device.SQL & Databases
  • EXPLAIN Plan VisualizerPaste EXPLAIN ANALYZE output and see the plan as a tree with per-node timing, rows and hot spots — entirely on this device.SQL & Databases
  • DDL to ORM ModelsConvert CREATE TABLE DDL into Prisma schema, SQLAlchemy models or TypeORM entities — with a cited type mapping, entirely on this device.SQL & Databases

Text & Writing

  • Word / Character CounterLive word, character, sentence and byte counts with platform limit meters — entirely on this device.Text & Writing
  • Case ConverterConvert text between UPPERCASE, lowercase, Title Case, camelCase, snake_case and more — every variant at once, entirely on this device.Text & Writing
  • Text Diff / CompareCompare two texts or files side by side or inline — line, word or character granularity — entirely on this device.Text & Writing
  • Remove Duplicate LinesDeduplicate any list with explicit case, trim and Unicode options — order preserved, removed lines auditable, entirely on this device.Text & Writing
  • Sort LinesSort any list alphabetically, naturally, numerically, by length, or shuffle it — locale-aware and stable, entirely on this device.Text & Writing
  • Line Break ToolsRemove, add, join or split line breaks — hard-wrapped paste to flowing text, columns to SQL IN lists — entirely on this device.Text & Writing
  • Remove Extra Spaces (Whitespace Tools)Trim, collapse and normalize spaces, tabs, empty lines and invisible characters — entirely on this device.Text & Writing
  • Text ReverserReverse any text by characters, words, each line, or line order — grapheme-safe, entirely on this device.Text & Writing
  • Upside Down TextFlip your text upside down or mirror it into copy-paste Unicode for social bios — entirely on this device.Text & Writing
  • Slug GeneratorTurn any title into a clean URL slug — language-aware diacritics folding, batch mode with CSV — entirely on this device.Text & Writing
  • Remove Accents & PunctuationStrip diacritics and punctuation from any text — independent toggles, base letters kept — entirely on this device.Text & Writing
  • Word Frequency AnalyzerRank how often each word appears — case-folding, stopword and top-N filters, CSV export — entirely on this device.Text & Writing
  • Email / URL / Phone ExtractorPull every email, URL and phone number out of messy text — dedupe, count and copy each list, entirely on this device.Text & Writing

Fake & Mock Data

  • Lorem Ipsum GeneratorGenerate placeholder text by paragraphs, sentences, words, or an exact character budget — entirely on this device.Fake & Mock Data
  • Themed Ipsum GeneratorGenerate themed placeholder text — hipster, corporate, tech, pirate, or bacon — by paragraphs, sentences, or words, entirely on this device.Fake & Mock Data
  • Fake Name GeneratorGenerate random names by locale and gender — seeded, reproducible, entirely on this device.Fake & Mock Data
  • Fake Address GeneratorGenerate synthetic street addresses by locale — components and a formatted block, seeded and reproducible, entirely on this device.Fake & Mock Data
  • Fake User Profile GeneratorGenerate a complete fake identity — name, email, avatar, address, phone, company — as a card or JSON, seeded and reproducible, entirely on this device.Fake & Mock Data
  • Mock Data GeneratorBuild a schema and generate realistic fake data as CSV, JSON, SQL, or XML — seeded, reproducible, entirely on this device.Fake & Mock Data
  • JSON Data GeneratorGenerate fake JSON from a small template of Faker tokens and repeat() — seeded, reproducible, entirely on this device.Fake & Mock Data

Markdown & Docs

  • Markdown Editor + PreviewWrite Markdown beside a sanitized live preview with scroll that stays in sync — entirely on this device.Markdown & Docs
  • Markdown to HTML ConverterConvert GitHub-flavored Markdown to clean, sanitized HTML with a faithful preview — entirely on this device.Markdown & Docs
  • HTML to Markdown ConverterTurn HTML into GitHub-flavoured Markdown — headings, nested lists, code fences and pipe tables — with everything Markdown cannot say named and counted.Markdown & Docs
  • Markdown Table GeneratorBuild a GFM table in a visual grid — paste straight from Excel or Google Sheets — entirely on this device.Markdown & Docs
  • Markdown TOC GeneratorTurn your headings into a Markdown table of contents — GitHub and GitLab anchor styles side by side, entirely on this device.Markdown & Docs
  • README GeneratorPick the sections a project README needs, order them with the keyboard, and copy the Markdown — entirely on this device.Markdown & Docs
  • GitHub Badge GeneratorDesign a badge, watch it render here as SVG, and copy the shields.io URL or the ready-to-paste Markdown — nothing is fetched from this page.Markdown & Docs
  • GitHub Profile README GeneratorBuild the README for your username/username repo — sections, badges and stats-card links — previewed entirely on this device.Markdown & Docs
  • Mermaid Diagram PreviewType Mermaid diagram text, or paste a whole Markdown file and step through its mermaid fences — the renderer loads only when you ask it to.Markdown & Docs

Unicode & Characters

  • String / Unicode InspectorBreak any string into per-character code points, categories, byte lengths and escapes — entirely on this device.Unicode & Characters
  • Unicode Character LookupPaste a character, type U+2014 or search by name, and get its Unicode name, block, script, category and every escape spelling — all on this device.Unicode & Characters
  • Zalgo Text GeneratorTurn any text into zalgo — cursed, glitchy Unicode — by stacking combining marks, with up/mid/down intensity and a reproducible seed, entirely on this device.Unicode & Characters
  • Fancy Text GeneratorTurn text into bold, italic, script, circled and fullwidth Unicode styles for social bios and usernames — every style at once, entirely on this device.Unicode & Characters
  • Emoji PickerEvery Emoji 17.0 character, searchable by name, tag or shortcode — click to copy the emoji, its shortcode or its code points, entirely on this device.Unicode & Characters
  • Invisible Character DetectorReveal and strip zero-width, bidi and other hidden characters — code point, name and position for every hit, entirely on this device.Unicode & Characters
  • ASCII Table ReferenceEvery ASCII code 0–127 with its decimal, hex, octal and binary value, glyph and control-code name — searchable instantly, entirely on this device.Unicode & Characters
  • ASCII Art GeneratorTurn text into big ASCII-art banners with built-in monospace fonts — entirely on this device.Unicode & Characters

Numbers & Units

  • Number Base ConverterConvert between binary, octal, decimal, hex and any base 2–36 — exact at any size, entirely on this device.Numbers & Units
  • Roman Numeral ConverterConvert Roman numerals to numbers and back — 1 to 3,999 in standard form, entirely on this device.Numbers & Units
  • Data Size ConverterConvert MB, GB and TB across SI (1000) and binary IEC (1024) units — exact to the last digit, entirely on this device.Numbers & Units
  • Download Time CalculatorEnter a file size and a transfer rate — Mbps or MB/s — and get the download time with the bits-vs-bytes math shown, entirely on this device.Numbers & Units
  • IEEE-754 Float InspectorSee any float's sign, exponent and mantissa bits and its exact decimal value — 32-bit or 64-bit, entirely on this device.Numbers & Units
  • Bitwise CalculatorRun AND, OR, XOR, NOT and shifts on integers in any base at 8-64 bit width — entirely on this device.Numbers & Units
  • Percentage CalculatorPercent of a number, what percent one value is of another, percent change, and adding or subtracting a percentage — worked exactly on this device.Numbers & Units

QR & Barcodes

  • QR Code GeneratorTurn any link or text into a permanent, static QR code — crisp SVG or high-resolution PNG, no signup, no expiry, entirely on this device.QR & Barcodes
  • WiFi QR Code GeneratorType your network name and password and get a printable WiFi QR code guests can scan to join — generated entirely on this device.QR & Barcodes
  • vCard QR Code GeneratorTurn contact details into a QR code that saves straight to the address book — vCard 3.0, generated entirely on this device.QR & Barcodes
  • SMS QR Code GeneratorCreate a QR code that opens a prefilled text message — number and body set by you, generated entirely on this device.QR & Barcodes
  • Email QR Code GeneratorCreate a QR code that opens a prefilled email — address, subject and body set by you, generated entirely on this device.QR & Barcodes
  • Location QR Code GeneratorTurn coordinates into a QR code that opens the point in any map app — geo: URI, generated entirely on this device.QR & Barcodes
  • Event QR Code GeneratorCreate a QR code that adds an event to the calendar — title, time and place in a standard VEVENT, generated on this device.QR & Barcodes
  • QR Code ReaderDrop a photo or point your camera and read any QR code — decoded on this device with open-source ZXing, never uploaded.QR & Barcodes
  • Barcode GeneratorPick a symbology, type your data and download a print-ready barcode — check digits computed and validated on this device.QR & Barcodes
  • Bulk QR GeneratorUpload a CSV and download a ZIP of QR codes — one per row, named by your chosen column, generated entirely in your browser.QR & Barcodes

Miscellaneous

  • Phone Number FormatterPaste a number, pick a region, and read every canonical form plus number type and an honest valid-or-possible verdict — parsed entirely on this device.Miscellaneous

Infrastructure & Cloud

  • HCL / Terraform Converter + FormatterConvert HCL to JSON and format Terraform files with the real HashiCorp HCL library — compiled to WebAssembly, running locally.Infrastructure & Cloud
  • AWS IAM Policy GeneratorCompose an IAM policy statement by statement — actions, resources and conditions — with the JSON structure checked as you build.Infrastructure & Cloud
  • IAM Policy Explainer / LinterPaste an IAM policy and read it in plain English — statement by statement — with wildcard and risk findings, each one cited.Infrastructure & Cloud
  • AWS S3 Bucket Policy GeneratorGenerate secure AWS S3 bucket policies for HTTPS enforcement, CloudFront OAC, and IP whitelisting — entirely on this device.Infrastructure & Cloud
  • AWS S3 CORS Configuration GeneratorGenerate AWS S3 CORS configurations in JSON and XML for web apps, SPAs, and cross-origin uploads — entirely in your browser.Infrastructure & Cloud
  • Terraform Backend Block GeneratorGenerate secure remote state backend blocks for AWS S3, GCS, Azure, and HCP Terraform with locking and encryption.Infrastructure & Cloud
  • Terraform Version Constraint HelperEvaluate Terraform pessimistic (~>) operators, test candidate versions, and build required_providers blocks.Infrastructure & Cloud
  • Terraform tfvars GeneratorParse variables.tf declarations and scaffold clean terraform.tfvars or JSON files with comments and default values.Infrastructure & Cloud

Realtime WS & SSE

  • WebSocket TesterCompose frames, script replies and step a WebSocket session on this device — with the handshake key computed and every close code decoded.Realtime WS & SSE
  • Socket.IO TesterDecode any Socket.IO wire packet into type, namespace, ack id and args — or build one from an event form — right on this device.Realtime WS & SSE
  • SSE / EventSource TesterPaste a raw text/event-stream transcript and see every event parsed by the spec grammar — then replay it with real timing, all on this device.Realtime WS & SSE

APIs & Protocols

  • OpenAPI Validator & ViewerLint a Swagger 2.0 or OpenAPI 3.x spec against spec-cited rules and browse it as docs — findings jump to the exact line, entirely on this device.APIs & Protocols
  • Swagger 2 to OpenAPI 3 ConverterUpgrade a Swagger 2.0 spec to OpenAPI 3.0 with every mapping shown — servers, requestBody, components — without the spec leaving this device.APIs & Protocols
  • OpenAPI Mock Response GeneratorTurn the schemas in your OpenAPI spec into realistic example payloads — seeded, deterministic and format-aware — without hosting anything.APIs & Protocols
  • OpenAPI to Client SnippetsPick any operation in your OpenAPI spec and get a ready request snippet — fetch, axios, curl or Python requests — parameters and auth placeholders included.APIs & Protocols
  • GraphQL FormatterFormat or minify GraphQL queries and SDL with a canonical printer — errors pinned to line and column, entirely on this device.APIs & Protocols
  • GraphQL Schema VisualizerSee your GraphQL schema as an interactive type graph — fields, relations and reachability from Query — from pasted SDL or introspection JSON.APIs & Protocols
  • GraphQL to TypeScriptGenerate TypeScript types from GraphQL SDL — objects, inputs, enums, unions and operation result types — with nullability mapped exactly.APIs & Protocols
  • gRPC Status Codes ReferenceAll 17 gRPC status codes with meaning, retry guidance, common causes and per-language constants — searchable instantly on this device.APIs & Protocols
  • Webhook Signature VerifierRecompute a Stripe, GitHub or Slack webhook signature from the raw payload and your secret — and see exactly why it does or does not match.APIs & Protocols

NoSQL

  • SQL to MongoDB ConverterTranslate SQL SELECT statements into MongoDB find() or aggregation pipelines for mongosh — entirely on this device.NoSQL
  • Mongo Query FormatterFormat MongoDB shell queries with ISODate, ObjectId and NumberLong kept intact — where plain JSON formatters choke, entirely on this device.NoSQL
  • Redis Command ReferenceSearch every Redis 7.2 command with syntax, complexity and since-version, and build common commands for redis-cli — entirely on this device.NoSQL
  • DynamoDB JSON ConverterConvert DynamoDB marshalled JSON to plain JSON and back — S, N, B, M, L and set types handled with number precision preserved, on this device.NoSQL

Images & Media

  • Image Resizer / CropperResize, crop, rotate and flip any image to exact pixels or social presets — processed on this device, never uploaded.Images & Media
  • EXIF Viewer / StripperSee every EXIF tag in a photo — including GPS — and strip metadata losslessly. Photos are read on this device, never uploaded.Images & Media
  • OG Image GeneratorType a title, pick a template and export a pixel-exact 1200×630 Open Graph image — rendered entirely in your browser.Images & Media
  • Screenshot BeautifierDrop a screenshot, add a window frame, gradient background and shadow, and export a share-ready PNG — all on this device.Images & Media
  • Code Screenshot GeneratorPaste code, pick a theme and window style, and export a crisp PNG or SVG — highlighted and rendered entirely on this device.Images & Media

Pages

  • All tools/tools
  • Privacy/privacy
  • Home/