Turn English into JSON Schema, Instantly and Offline

If you’re a developer dealing with APIs or data validation, you know the drill: you need a JSON Schema, and your product manager slacks you something like, “We need a user object with a name, email, age, and a list of favorite colors.”

Then you open VS Code, hit a JSON Schema playground, or use an online generator. It’s still manual, takes time, can lead to errors, and frankly, it’s boring.

Imagine just pasting that message and getting a valid, production-ready JSON Schema. No markdown, no syntax errors, no guesswork.

That’s what this little tool does, and it works completely offline.


What It Is

This project is a local app with a simple interface that converts plain English into precise, standards-compliant JSON Schema. It uses a small, efficient AI model (TinyLlama) that runs entirely on your machine.

It includes:

  • TinyLlama: The AI model runs locally using llama.cpp—no internet needed.
  • Slick Interface: A clean desktop app built with pywebview and Flask.
  • Smart Parser: It strips markdown, fixes messed-up JSON, and gives you clean, usable output.
  • Self-Contained: You can bundle it as an .exe and run it anywhere.

Just describe your data, and it delivers a full JSON Schema (Draft-07 format) without sending anything to the cloud.


Why You’ll Want It

This tool is for:

  • Developers who are tired of writing or figuring out JSON Schema syntax by hand.
  • Privacy-conscious teams who need offline tools for secure work.
  • Speed fanatics who want fast, ready-to-use schemas from descriptions.
  • Automation builders who generate schemas programmatically for workflows, APIs, or AI pipelines.

It’s particularly useful for:

  • API prototyping
  • Building form validation engines
  • AI tools that need structured output
  • Data ingestion pipelines

Since it runs locally with TinyLlama and llama.cpp, it’s quick and respects your computer’s resources and your privacy.


How It Works (Behind the Scenes)

The system works like this:

  • gui.py: Starts a local Flask server and shows the app in a desktop window using pywebview.
  • schema_builder.py: Sends your English description to a parsing function.
  • nlpparser.py:
    • Loads the local TinyLlama model.
    • Sends your description with a strict JSON Schema prompt.
    • Pulls out the first valid JSON block (even if the model adds extra text).
    • Cleans up any markdown or formatting.
    • Tries to fix any malformed JSON if necessary.

The result? Clean, Draft-07 compliant JSON Schema.

No ChatGPT. No APIs. Just your computer doing the work.


Example

Input:

“A product has a name (string), price (number), and availability status (boolean).”

Output:

JSON

{
  "type": "object",
  "properties": {
    "name": { "type": "string" },
    "price": { "type": "number" },
    "availability": { "type": "boolean" }
  },
  "required": ["name", "price", "availability"]
}

In Short

This app transforms your plain English into clean, structured JSON Schema, offline, fast, and reliable.

If you build APIs, forms, or anything that needs data validation, this will save you time and effort.

Want a custom solution built for you or need some fresh eyes on your automations or systems? Please, reach out and let’s chat.

https://automatetowin.com/contact-us


Comments

Leave a Reply

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