I’m pleased to announce FlowCode, codeless IDE using DIA, GNUMetric and Camblanche as Component Applications Integrated Into An Effective RAD IDE for non-programmers (flowgrammers), with a relentless document as specification and collaborative user based help, beta testing and development, along with a steadfast FOSS licensing ethos.
Subject: Using DIA for Visual Programming - FlowCode Project
Hi everyone!
I’m building something exciting with DIA and wanted to share: FlowCode, a system that turns flowcharts into working code.
The Idea
What if flowcharts weren’t just documentation? What if they were the program?
-
Teacher draws a flowchart to show students how an algorithm works
-
System generates actual Python code from that flowchart
-
Students see both the visual logic AND the running code
-
They can modify the flowchart and see the code change in real-time
Why DIA?
DIA is perfect because:
-
Open source (GPL) - our project is also GPL v3
-
Excellent flowchart symbols
-
XML format we can parse
-
Mature and stable
-
Active community
What We’ve Built
Working proof-of-concept that:
-
Reads .dia files
-
Parses flowchart structure
-
Generates Python code
-
It actually works!
Example:
User draws: INPUT → DECISION → PROCESS → OUTPUT
System generates: Working Python program with input(), if/else, calculations, print()
The Vision
Short term:
-
FlowCode IDE with integrated DIA
-
Flowchart editor + code viewer side-by-side
-
Educational tool for teaching programming
Long term:
-
Visual programming for non-coders
-
Spreadsheet integration (like Excel VBA but visual)
-
Multi-language support (Python, JavaScript, etc.)
-
Community library of reusable flowchart components
The Ask
To make this truly powerful, we need richer custom shapes. Currently ext_attributes support basic types (int, string, real). We need:
-
Typed parameters
-
Template strings
-
Validation rules
-
Nested attributes
This would let us create flowchart symbols that are true “code building blocks.”
Would the DIA team be interested in patches for this?
We want to contribute upstream rather than fork!
Target Audience
-
Educators teaching programming
-
Business analysts creating process flows
-
Citizen developers automating workflows
-
Students learning to code visually
Call to Action
-
Feedback on the concept?
-
Interest in enhanced extensibility?
-
Guidance on contributing to DIA?
Whitepaper link: flowcode/docs/whitepaper/FlowCode-Whitepaper.md at main · SkepticusMaximus/flowcode · GitHub
Thanks for building such a great tool! Let’s make it even more powerful together.