Skip to content

stepan-mitkin/drakon.tech.desktop

Repository files navigation

DrakonTech

DrakonTech is a development environment that generates programs from diagrams written in the Drakon visual language.

Documentation

DrakonTech screenshot: FizzBuzz algorithm

Building diagrams in DrakonTech is fast and easy. The flowchart editor in DrakonTech eliminates the need for manual drawing. The user specifies the intent ("add a step," "switch a branch"), and the program automatically arranges the elements.

DrakonTech generates source code in several languages:

  • JavaScript
  • Lua
  • C
  • Clojure
  • Perfolenta.Net
  • OneScript/1C:Enterprise
  • Kumir

DrakonTech generates not only functions but also classes and finite state machines.

How to program in DrakonTech

  1. Create a project. DrakonTech will create a separate folder for the project. The project file in DrakonTech has the .dtproj extension.
  2. Select the target programming language. Create Drakon diagrams in the project. DrakonTech will convert each diagram into a function in the selected language.
  3. Insert short snippets of linear code in the selected programming language into the Drakon diagram elements. Avoid using "if-else" statements or loops keywords. Use the diagram's visual structure to define the algorithm's logic.
  4. Click the "Build" button. DrakonTech will generate a source code file based on the diagrams.
  5. Include the generated source code file in your program.

Download DrakonTech

DrakonTech runs on Windows, macOS, and Linux.

Run DrakonTech Without Executables

If you're wary of unknown executables, or if your architecture isn't supported, you can run DrakonTech from source without building.

  1. Download the DrakonTech source code.
  2. Install NodeJS.
  3. Globally install the electron npm package: npm install -g electron
  4. Go to the DrakonTech source code folder.
  5. Run the runme file or the following command: electron src/main.js

Production Status

DrakonTech is a research project. However, it is fully functional. DrakonTech was used to develop DrakonWidget library and DrakonHub app.

.drakon File Format

DrakonTech stores Drakon flowcharts in .drakon files. DrakonTech's .drakon files contain a subset of DrakonWidget's JSON-based file format. Its structure is simple and well-documented.

License

Public domain.

Contact the Author

drakon.editor@gmail.com

About

A flowchart editor that generates source code in Clojure, JavaScript, Lua, Perfolenta, and OneScript

Topics

Resources

License

Stars

Watchers

Forks

Contributors