💡 Inspiration

Building AI apps kept forcing me to rewrite the same foundations: API calls, retries, workflows, formatting.

Which usually cost 20+ hours from the development time. So, I realized this was a perfect use case for the Skeleton Crew pattern, build a production-ready foundation once, then reuse it for unlimited applications. That’s why I built PromptBlocks, a reusable AI skeleton framework powered by OpenRouter, designed to help developers ship applications faster with zero repeated effort.


🔍 What It Does

PromptBlocks provides a production-ready skeleton for any AI text-processing app. To prove the architecture works, I built two completely different apps using the same core:

  1. Single-Block App: Run one transformation (summarize, rewrite, extract, translate, etc.) with clean, human-readable output.
  2. Workflow Builder: Chain multiple transformations into pipelines, run them step-by-step, and visualize each stage.

Both apps share 100% of the logic through the skeleton engine: block registry, executor, workflow engine, formatting, and error handling.


🛠️ How We Built It

I followed a full spec-driven development process using Kiro:

  • Wrote detailed EARS-style requirements and steering docs
  • Built the reusable skeleton engine first (blocks, executor, workflows)
  • Then created two separate apps using only the skeleton zero duplication
  • Added agent hooks for automated checks and vibe coding for fast iteration
  • Integrated OpenRouter with nousresearch/hermes-3-llama-3.1-70b for all AI transformations

The result is a clean, disciplined architecture where UI is thin and the skeleton does the heavy lifting.


⚙️ Challenges We Ran Into

  • Rate limits on free AI models required smart exponential backoff and retry logic
  • Enforcing zero duplication across two apps required automated hooks and steering docs
  • Ensuring outputs were always human-readable meant building a sanitization layer
  • Managing state across workflows needed a robust workflow engine

🏆 Accomplishments We’re Proud Of

  • Built two fully functional apps with 100% shared logic
  • Production-quality error handling, retries, validation, and workflow stability
  • Super easy extensibility, adding a new block takes minutes
  • Strong use of Kiro: specs, vibe coding, hooks, and steering all integrated cleanly

📚 What We Learned

  • Spec-first design leads to cleaner code and fewer surprises
  • Constraints (like “no duplication”) force better architecture
  • Automation through hooks saves hours of debugging
  • Skeleton Crew is a powerful pattern when executed with discipline

🚀 What’s Next for PromptBlocks

  • Expanding the core framework with more transformation blocks and domain-specific modules
  • Shipping a standalone batch-processing engine so teams can run large workflows directly from the library
  • Adding multi-model adapters (OpenAI, Anthropic, local models) as pluggable backends
  • Publishing developer guides, templates, and a community-driven block marketplace to help teams extend the framework effortlessly.

The goal: make PromptBlocks a fully installable framework you can drop into any project and build production-ready AI workflows with almost zero boilerplate.

Built With

  • css3
  • fetch-api
  • hermes-3-llama-3.1-70b
  • html5
  • javascript-(es6+)
  • kiro-ide
  • localstorage-api
  • openrouter-api
Share this project:

Updates