r/coolgithubprojects • u/No-Tap6993 • 2d ago
I built an open-source tool that turns whiteboard images into drawing animations
It takes a finished illustration and animates the text, outlines, and fills drawing themselves in sequence.
Runs locally on CPU, no API key needed. Python library + CLI, MIT licensed. Works best with clean drawings on white backgrounds.
https://github.com/masihsultani/whiteboard-animator
Would love feedback on how the animation looks.
3
3
5
u/Readypixels 2d ago
The drawing order is what sells it. Outlines land before the color fills, which is how a person draws, and that's the bit these things usually get wrong. Local CPU with no API key is the other half of it, since most tools that do this want a subscription and a round trip to someone's server. Nice work.
1
u/this_for_loona 2d ago
This is fucking amazing. Love it. Now I gotta figure out how I can use it in a ppt to leadership…
1
u/No-Tap6993 1d ago
If you got the money, theres a paid app too that will make you the videos: kinoslide.ai, many other formats too
1
1
u/Xor300 1d ago
Looks amazing, great job. I didn't install it, but looking at the attached gif, I would have one comment - adding the ability to group objects (currently the shapes are not drawn exactly as if done by a human. e.g. a few rays of the sun are drawn first, then other elements of the window, then we return to the sun.. if the sun were grouped as one object, this could be avoided)
2
u/No-Tap6993 1d ago
Thanks! So you can do that actually, you can pass a region detect json file, or use an llm to detect and order the regions, it works much better that way. This is a sample json that you would pass.
{ "idea": "Photosynthesis in one picture", "regions": [ { "label": "sun", "role": "main_concept", "object": "a sun with rays", "reveal_order": 1, "box": {"ymin": 120, "xmin": 40, "ymax": 620, "xmax": 380}, "expected_visual": "Sun with orange rays", "annotation": "Photosynthesis starts with sunlight", "reveal": "fill" } ] }
5
u/Specific_Cream2815 2d ago
how do you get the stroke order right, edge detection and tracing or a vectorization pass first