Disclaimer

I wasn't able to add the showcase of it working in the video due to it not uploading so I just uploaded the video of me explaining how I built it, and then when they extended it I didn't see the email until ~10 minutes before the new deadline which wasn't enough time. However if anyone is curious and wants to see the product in action for when I release it to the public, it's here in a google drive folder where anyone can view the video, I understand if the judges cannot view it but again it's just for anyone curious. https://drive.google.com/drive/folders/1k0jGzA7LDrZUKlFnIaFEZhvia4j_4DKS?usp=sharing

Inspiration

Originally when I was making my own workflows in projects, I would have to manually look for the API keys for every single project, being difficult to know what was happening or where things were going wrong for workflows. An AI might mess up on one part and then it would ruin the future output. Then an idea hit me. Being someone who grew up with scratch building blocks to visualize coding and errors, I asked myself: what if AI workflows worked the same way? And every model and handoff was something you could inspect and see the output of? And then, Nodist, the AI Workflow, was born.

What it does

The premise is simple: add all of your base models such as image, voice, text, or visually generative through their API keys in 10 seconds, use any template idea, generated idea using Builder, or imported idea from your or another person’s github, and then analyze and change the workflow up however you want it, allowing tests that pre calculate the costs and show every step that every model takes in every workflow.

How we built it

Originally, I had a prototype that I had made for fun using free subscriptions, but it’s functionality was heavily flawed in that the only features that worked were the workflows and attaching the AI models, and pressing play with the nodes didn’t work how I would want it to, so I thought it wouldn’t be helpful. When build week came out, I took the jump and got a ChatGPT subscription, where I used GPT 5.6 Sol to upload my original prototype and it analyzed my problems, revealing many security and functional issues that I had missed with lower models. Then I gave it my full thoughts and vision for what it should be reworked into, generating multiple MD files as I would enter each into Codex 5.6 Extra High, playtest it, and then use ChatGPT to help turn my feedback and architecture I had in mind back into formatted markdown to save tokens and improve clarity for Codex. Each feature was added in stages, first focusing on the skeleton in Next JS for testing purposes, then data and authentication so the app works locally and saves workflows and API keys, then model and provider setup, then the node canvas. At the very end, I used Codex 5.6 Extra High to analyze my own repositories of projects with workflows that I had struggled with making in the past so that it could spot any holes in spotting and recreating the workflows using the nodes, which ended up with me adding (name nodes) that became necessary for importing other Github projects. Throughout each MD file, GPT 5.6 helped to accelerate the way I formatted my thoughts into creation and clarify on complex topics that I didn’t know a lot about but knew was essential, such as context handling and compaction (how to keep a running workflow's history small enough to stay inside each model's context window), provider routing and failover, agent core loops (how a model decides its next tool/step), and serializing a whole node graph to a portable file so workflows could be saved, shared, and re-imported. I then asked Codex to simulate strict imports of two of my past projects with AI workflows, Lapis and Familiarized. It checked every source file and treated any difference in prompts, model selection, tools, branches, retries, state, citations, file handling, or output shape as a compatibility gap. That work added structured output schemas and repair turns, ordered provider routing, retrieved-only citation and quotation rules, Wikipedia/OpenAlex/OER search contracts, typed data and transformation nodes, file/webhook/event-stream nodes, source-evidence hashes, and an automated manifest comparator. Lapis produced 8 workflows with 49 typed nodes from 124 source files; Familiarized produced 10 workflows with 64 typed nodes from 172 files. Every detected behavior now has a typed representation, while external accounts and unavailable third-party runtimes remain documented limitations instead of being described as cloned.

Challenges we ran into

When planning the project, the point of it was that I could use it for easily creating and editing any project that I had in mind for prototypes, however machine learning nodes ended up requiring a GPU backend that I couldn’t obtain in the time frame but it’s definitely something I’m very interested in adding in the future. Another issue that I ran into was automating the connection of the API keys, however Nodist points you directly to each provider's key page, so connecting a model still takes about ten seconds. Getting Nodist to correctly detect and rebuild the workflows from my own past repos was surprisingly harder than the preview demo. Reconstructing messy, real-world pipelines as clean nodes is what forced the specialized import nodes into existence though which allowed for improved imports for projects.

Accomplishments that we're proud of

I'm proud that Nodist does the thing I originally wished existed: I can take a workflow, even an abandoned one from an old repo, and see exactly where it breaks. It became something that I would genuinely use. The debugging is also great. Turning a chain of AI calls into visible nodes with per-step visibility and pre-run cost estimates seemed like something I would never be able to do without intensive planning behind the architecture, but GPT 5.6 helped to plan everything out for the backend. Importing repositories is also an amazing use case and pointing it at my own past projects and watching it reconstruct those workflows as nodes was a great feeling.

What we learned

For context and compaction when planning it out, I had been thinking about it when I was adding other features but what was hard was the accumulation, with each output becoming the next input and passing the full context just ends up completely blowing a window, not to mention the differences in each API. Each context therefore becomes a budget with compacting intermediate outputs into summaries before handing them downstream while preserving the raw output separately for debugging. Something else I learned actually from my old prototype was for failure isolation and how models would fail in a pipeline and break the rest, so there needed a way for an automatic fallback. These providers could fail because of rate limits, endpoints go down, or pricing shifts, so I had to design a routing layer that resolves a "text" or "image" step to an actual provider at runtime and fails over when one is unavailable

What's next for Nodist

Whether this app wins or not, I’ll release this as a service for other developers to use. I’ll make sure that the machine learning lab and nodes work with their own GPU backends and then I may attach Stripe so that developers can use Nodist as a centralized credit bank to attach money and then use API’s that are built into the app’s backend, getting rid of the manual connection and manual addition of money for each provider. I’ll also make a community place where people can post their own templates or projects so people can share their best pipelines and open source them, and also allow for collaboration with multi user canvases and team credit pools and shared dashboards for bigger projects. I’m also planning on using a multi-objective genetic algorithm which is similar to what I’m doing in stock prediction so I can return a Pareto frontier to map the cheapest possible setup at every quality tier, making it easy for the user to pick their point on the curve.

Built With

Share this project:

Updates