An Anagram is a word created by rearranging the letters of another word.
For example, my full name, 'Ethan Oliver Marks', is an anagram for 'Martin Kolver Shea'.

I generated the above animation using Anagram Animator, a Colab Notebook I wrote in a few hours.

Usage
I made Anagram Animator because my friends were making anagrams of our names one day and I wanted to contribute by making visualizations. None of my friends are programmers, so I specifically designed the notebook to be as easy to use as possible.
These instructions are also in the notebook.
- Come up with an anagram
- Fill in the parameter form with your start and end words (must be anagrams; will get an error otherwise)
- Run the cell by pressing the little circle in the top left corner
- Press Run Anyway on the pop up box that appears
- Please be patient while the code generates the GIF; it could take up to a minute
- When it's finished, the code will automatically render and download the finished GIF
How It Works
- Input Validation: Make sure that the start and end words are valid anagrams
- Character Mapping: Figure out where each character should move to
- Render Frames: Render each frame of the animation by interpolating between the start and end positions of each character
- Compile Frames: Compile each frame into a GIF
- Display and Download: Display the finished GIF and download it to the user's device
Conclusion
Other anagram animators exist--most notably the Internet Anagram Server--but all the ones I looked at had some sort of major flaw (e.g. low frame rate, opaque backdrop, etc.) which was enough of a dealbreaker that I decided to write 300 lines of Python to make my own. Hope you enjoy it!
~Ethan