A flowchart editor that generates prompts for AI apps and source code in Clojure and JavaScript.
DrakonTech is a flowchart editor that generates pseudocode for AI app prompts and source code in Clojure and JavaScript. In other words, DrakonTech is a prompt-engineering tool and an IDE for JavaScript and Clojure. DrakonTech utilizes the DRAKON standard from the aerospace industry. DRAKON’s strict ergonomic rules ensure algorithms are easy to read, while DrakonTech streamlines flowchart creation and modification with minimal user input.
DrakonTech enables users to build algorithms using DRAKON, a flowchart standard designed for clarity and precision. The editor automates flowchart construction with just a few clicks, transforming them into pseudocode for AI applications like ChatGPT, Gemini, or Grok, or directly into Clojure and JavaScript source code.
- Ergonomic Flowcharts: Create algorithms with DRAKON’s clear, readable structure.
- Pseudocode Generation: Convert flowcharts into pseudocode for AI app prompts.
- Clojure and JavaScript Output: Generate functional code directly from flowcharts.
For many real-life algorithms, a text-only description is insufficient to specify program logic clearly. Pseudocode provides a structured way to communicate a program’s intent to an AI app, but it can be difficult to read. With DrakonTech, users create intuitive flowcharts that are easy to understand and then generate precise pseudocode, accurately conveying the programmer’s intention to AI applications.
- Create an empty folder and add a
solution.jsonfile with:{ "language": "LANG_HUMAN" } - Start DrakonTech, click "Open folder," and select the created folder.
- Create functions, adding human-friendly free text inside flowchart elements.
- Click the "Build" button (spanner icon) to generate pseudocode:
- For a single function, open the function and click "Build."
- For all functions in a folder and its subfolders, select the folder in the tree view and click "Build."
- Use the generated pseudocode as a prompt for AI apps.
Example: DrakonTech’s own source code includes an AI-targeted project as a practical demonstration.
https://github.com/stepan-mitkin/drakon.tech.desktop/tree/main/src/extro/clojure/clojure-lexer
- Create an empty folder and add a
solution.jsonfile with:{ "language": "clojure", "outputFile": "../foo-bar.cljc" // Optional } - Start DrakonTech, click "Open folder," and select the created folder.
- Create functions, embedding small Clojure snippets in flowchart elements.
- Use the "Question" icon without round brackets, e.g.,
= x 0produces(= x 0). - Declare variables in "Action" icons using
let, e.g.:orlet y 10This produces:let y 10 z (+ y 5)
Note: Omit square brackets and the(let [y 10 z (+ y 5)] (... rest of your function))
letbody; declared variables are available in the flowchart below the icon. - Add a
modulefunction at the root folder to include custom code at the top of the generated module. - Click the "Build" button to generate a Clojure module.
- The generated file is placed in the project folder by default or at the path specified in
outputFile(relative or absolute, using..for relative paths).
See example:
https://github.com/stepan-mitkin/drakon.tech.desktop/tree/main/demos/hello-drakon-clojure
- Create an empty folder and add an optional
solution.jsonfile with:{ "language": "JS", "outputFile": "../foobar.js" // Optional } - Start DrakonTech, click "Open folder," and select the created folder.
- Create functions, embedding small JavaScript snippets in flowchart elements.
- Add a
modulefunction at the root folder to include custom code at the top of the generated module. - Click the "Build" button to generate a JavaScript module.
- The generated file is placed in the project folder by default or at the path specified in
outputFile(relative or absolute, using..for relative paths).
See examples:
https://github.com/stepan-mitkin/drakon.tech.desktop/tree/main/demos/fsm-lift
https://github.com/stepan-mitkin/drakon.tech.desktop/tree/main/demos/linkedlist
DrakonTech is available for Windows, macOS, and Linux.
