We’re constantly looking for ways to turn generative chaos into reliable creative systems. One of the biggest hurdles we face? Consistency at scale. Generative AI gives us infinite possibilities, but it is often treated like a wishing well. We fall into the “single-mega-prompt trap,” tossing in every variable at once and praying for a miracle. But when a workflow needs to be shared across a team, this can lead to chaos and inconsistency quite fast. We recently ran an experiment to solve this. Here is a behind-the-scenes look at a custom pipeline that is built using Figma Weave and Replit to generate assets for any article on the fly and protect the visual style from slop.
First, you need to define your goal. For this experiment, the goal was to create assets that work for any article, featuring a single subject in motion with a dither heatmap effect. From there, the vision got broken into smaller parts to maintain control across every layer.
In Figma Weave, the process begins by identifying a subject that captures the essence of the article, you just have to paste the text. The system provides three distinct suggestions, which lets us step in and act as the curator. Once the winner is picked, an image gets generated. Consistency is maintained by setting simple rules, like making sure the output is a high-contrast grayscale image with the subject being centered and isolated. From there, a video is generated with similar constraints, like locking the object in place while it moves. Now we have a perfect base, and the final step is applying the dither heatmap effect.
Keeping the entire workflow nested within a single tool would be the ideal setup, but in our case it comes down to texture stability. The issue is that generative models are still probabilistic; they are 'guessing' pixels rather than calculating them. Since dithering is purely mathematical, it’s much easier to force the pattern through a script than to ask an AI to simulate the math frame by frame. Maybe there’s a model out there capable of holding a perfect dither natively, but we haven't found it yet. To bridge this gap, the development phase moved into Replit, though you can use the AI coding tool of your choice. Outlining the requirements in plain language made it simple to map out a clear development plan. The result is a lightweight, custom web app that processes the video frame by frame using p5.js. The tool applies a classic 8x8 Bayer ordered dither matrix. It includes strict visual rules, alongside a few adjustable sliders that allows for quick experimentation to dial in the exact target look.
Because it relies on math, the style is completely locked in. You just drop the generated video from Figma Weave in, and it exports a perfect sequence of dithered frames.
Ultimately, we have to stop expecting the AI to handle everything in one go. It’s about putting together an actual pipeline, including all the testing, breaking, and wiring different tools together until we get what we want. Instead of trying to build slot machines, we need to build systems with rules that are hard to break.