By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: I Built a Poor Man’s Pixar Using Python, Gemini, and My Sense of Humor | HackerNoon
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > Computing > I Built a Poor Man’s Pixar Using Python, Gemini, and My Sense of Humor | HackerNoon
Computing

I Built a Poor Man’s Pixar Using Python, Gemini, and My Sense of Humor | HackerNoon

News Room
Last updated: 2026/01/10 at 4:35 PM
News Room Published 10 January 2026
Share
I Built a Poor Man’s Pixar Using Python, Gemini, and My Sense of Humor | HackerNoon
SHARE

Animation is too hard.

To make a 30-second clip, you usually need to learn Blender, hire voice actors, frame keyframes, and render for twelve hours. I wanted to make memes, shitposts, and storytelling clips, and I wanted them done in the time it takes to drink a coffee.

So, I built the Stickverse.

It is a scrappy, Python-based animation pipeline that turns a raw text story into a fully voiced, lip-synced (well, “lip-flapped”) video. It uses Google’s Gemini to parse the script, a CLI tool to record your own bad voice acting, and OpenCV to draw the frames.

Here is how I built it, and how you can use it to create your own episodes of the Stickverse.

The Architecture

The pipeline consists of three distinct Python scripts:

  1. The Parser (parser.py): Uses Gemini to turn a text block into a storyboard (JSON).
  2. The Director (director.py): A CLI tool that prompts you to record lines one by one.
  3. The Animator (animator.py): The engine that stitches audio and vector graphics into an MP4.

Let’s break down the code.

Phase 1: The Screenwriter (Powered by Gemini)

The hardest part of procedural animation is structure. If I write a story, I don’t want to manually tag every single line with { "character": "Steve" }.

I delegated this to the Gemini API. I feed it raw text, and via a system prompt, it returns clean JSON.

Here is the secret sauce in parser.py. The system prompt enforces strict rules so the animator doesn’t crash later:

system_prompt = """
You are a Screenplay parsing engine. Convert the following raw text story into a structured JSON animation script.

RULES:
1. Identify every character speaking.
2. Identify scene changes (backgrounds).
3. Output JSON ONLY. No markdown, no explanations.

JSON STRUCTURE:
[
  { "type": "background", "description": "desert" },
  { "type": "speak", "character": "Walter", "text": "Jesse, we have to cook." }
]
"""

If I feed it a text file where I wrote “Walter yells at Jesse about API keys,” Gemini breaks it down into the exact scenes and lines I need to record.

Phase 2: The Director (The Karaoke CLI)

Once we have a script_plan.json, we need audio.

I didn’t want to use AI Text-to-Speech (TTS) because AI voices have no soul. They can’t capture the panic of a man realizing he missed a deployment deadline.

I wrote director.py using the sounddevice library. It reads the JSON, clears the terminal, and acts like a teleprompter.

# snippet from director.py
print(f"🗣️  CHARACTER: {char.upper()}")
print(f"📝 LINE: "{text}"")

# It waits 15 seconds for you to get into character
# Then records automatically when you hit Ctrl+C

It saves every line as a separate .wav file (line_0_Walter.wav) and updates the JSON to link the text to the audio.

Phase 3: The Animator (Math, Not Magic)

This is where the “Stickverse” comes alive. I didn’t use a game engine. I used OpenCV (to draw lines) and MoviePy (to stitch frames).

The “Lip-Sync” Algorithm

I couldn’t be bothered to train a neural network for lip-syncing. Instead, I used scipy.io.wavfile to analyze the volume of the audio file.

  • Loud noise = Mouth Open Big.
  • Quiet noise = Mouth Open Small.
  • Silence = Mouth Closed.
# snippet from animator.py
def draw_frame(t, character_speaking, mouth_open_amount):
    # ... drawing the body ...

    gap = int(mouth_open_amount * 20) # Calculate jaw drop

    # Draw top of head moving up and down
    top_center = (x, 300 - gap)
    cv2.ellipse(img, top_center, (50, 50), 0, 180, 360, color, -1)

The result is a flappy-headed aesthetic that looks like South Park meets a terminal window.

The Demo: “Breaking Stories”

To test the system, I fed it a script about Walter and Jesse arguing about Hackernoon editorial standards.

The Prompt (that I totally followed to the letter):

“The scene takes place in a desert. Walter says: Jesse, we have to cook. These editors want 2 keys of articles by the end of the week.”

The Result:

  • Gemini identified the “Desert” background keyword and changed the sky color to Cyan and the ground to Orange.
  • It identified Walter and Jesse.
  • The Animator rendered them in Blue and Yellow (Hazmat suit style).

Join the Stickverse

The code is open source. It is messy, it is funny, and it works.

The beauty of the Stickverse is that it is strictly code-based.

  • Want a top hat? Add cv2.rectangle to the head logic.
  • Want explosions? Add a random jitter function to the camera frame.

You can find the repo here: [https://github.com/damianwgriggs/The-Stickverse]()

Clone it, modify the draw_frame function, and create your own episode. We have to cook.

:::info

Genesis Art Engine Prompt for featured photo: A blazing hot desert with a radiating sun. Meant to fit the “Breaking Stories” theme.

:::

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article Inside the Development Workflow of Claude Code’s Creator Inside the Development Workflow of Claude Code’s Creator
Next Article Global Venture Funding In 2025 Surged As Startup Deals And Valuations Set All-Time Records Global Venture Funding In 2025 Surged As Startup Deals And Valuations Set All-Time Records
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

This Babbel Deal Can Help Your Resolution to Learn a New Language Finally Stick
This Babbel Deal Can Help Your Resolution to Learn a New Language Finally Stick
News
Indonesia and Malaysia block Grok over non-consensual, sexualized deepfakes |  News
Indonesia and Malaysia block Grok over non-consensual, sexualized deepfakes | News
News
Moonton to launch Mobile Legends: Bang Bang in China on January 23 · TechNode
Moonton to launch Mobile Legends: Bang Bang in China on January 23 · TechNode
Computing
Top 10 Software Development Companies
Top 10 Software Development Companies
Software

You Might also Like

Moonton to launch Mobile Legends: Bang Bang in China on January 23 · TechNode
Computing

Moonton to launch Mobile Legends: Bang Bang in China on January 23 · TechNode

1 Min Read
WeChat removed from US’s so-called notorious markets’ list · TechNode
Computing

WeChat removed from US’s so-called notorious markets’ list · TechNode

1 Min Read
CES 2025: Spotlight on smart glasses · TechNode
Computing

CES 2025: Spotlight on smart glasses · TechNode

4 Min Read
US-China tariffs likely to impact Apple prices, iPhone 17 adjustments expected · TechNode
Computing

US-China tariffs likely to impact Apple prices, iPhone 17 adjustments expected · TechNode

1 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?