A free and open source software developed to help programming students learn about control structures by using pseudocode and generating ANSI standard flowcharts of their algorithms in real-time.
- Real-time flowcharts — Generates ANSI standard flowcharts as you type, rendered with Konva.js on an interactive zoomable canvas.
- Built-in interpreter — Run your pseudocode directly in the app with step-by-step execution, variable tracking, and input/output support.
- Bilingual pseudocode — Switch between English and Spanish keywords in the Settings panel without changing the language of the UI.
- Cross-platform — Desktop apps for Linux, macOS, and Windows (via Tauri), plus a fully functional web version.
- Code editor — Custom editor with syntax highlighting, line numbers, tab indentation, and code templates.
- File management — Native open/save dialogs on desktop, Blob download on web, with tab-based file naming.
The pseudocode language can be switched between English and Spanish in the app Settings.
| Category | Language | Syntax | Example |
|---|---|---|---|
| Variable declaration | English | declare |
declare x = 10 |
| Español | declarar |
declarar x = 10 |
|
| Output | English | print |
print "Hello World" |
| Español | imprimir |
imprimir "Hola Mundo" |
|
| Input | English | read |
read name |
| Español | leer |
leer nombre |
|
| If-Else | English | if … else … endif |
if (x > 0) print "pos" else print "neg" endif |
| Español | si … sino … finsi |
si (x > 0) imprimir "pos" sino imprimir "neg" finsi |
|
| Switch-Case | English | switch … case … endcase … endswitch |
switch (x) case 1: print "one" endcase case 2: print "two" endcase endswitch |
| Español | seleccion … caso … fincaso … finseleccion |
seleccion (x) caso 1: imprimir "uno" fincaso caso 2: imprimir "dos" fincaso finseleccion |
|
| Repeat (For) | English | repeat … for … until … steps … endrepeat |
repeat (for i = 0 until 10 steps 1) print i endrepeat |
| Español | repite … para … hasta … pasos … finrepite |
repite (para i = 0 hasta 10 pasos 1) imprimir i finrepite |
|
| While | English | while … endwhile |
while (x > 0) print x endwhile |
| Español | mientras … finmientras |
mientras (x > 0) imprimir x finmientras |
|
| Do-While | English | dowhile … enddowhile |
dowhile (x > 0) print x enddowhile |
| Español | hacermientras … finhacermientras |
hacermientras (x > 0) imprimir x finhacermientras |
|
| Assignment | — | = |
x = 5 |
| Arithmetic | — | + - * / % |
Standard operators |
| Relational | — | == != < > <= >= |
Comparison |
| Boolean | English | and / or |
Logical operators |
| Español | y / o |
Operadores lógicos | |
| Array literal | — | [1, 2, 3] |
Comma-separated elements |
| Array index | — | arr[i] |
Zero-based indexing |
| Array length | English | .length |
arr.length |
| Español | .longitud |
arr.longitud |
|
| Single line comment | — | // |
// this is a comment |
| Multi line comment | — | /* */ |
/* block comment */ |
Strings can be enclosed in single (') or double (") quotes.
- Linux
- macOS
- Windows
- Web
| Layer | Technology |
|---|---|
| Frontend | Svelte 3 + TypeScript |
| Styling | SCSS |
| Flowchart canvas | Konva.js |
| Desktop shell | Tauri v1 (Rust) |
| Bundler | Vite 3 |
| L10n | Custom JSON-based i18n (EN / ES) |
This project is currently under active development, with planned features in the pipeline. We dedicate our free time to making progress and improving PseudoFlow. We would like to express our gratitude for the support of everyone involved and sincerely appreciate your collaboration and feedback as we collectively shape the future of PseudoFlow.
If you are interested in contributing and are unsure where to start, please feel free to reach out to @talamantesvictor to get started.
Roadmap: https://github.com/users/talamantesvictor/projects/1
By donating, you are helping the author support this and other open-source projects and activities, contributing to a better and freer world where we can all pursue and do what we love.
Victor Talamantes, a dedicated programmer and tech enthusiast, started coding at the age of 12 and soon began earning income through his own video game portal. In addition to his studies, he founded a Video Game Programmers Association and went on to establish Binmatter, a highly respected software development company in Mexico. Recently, Victor has expanded his influence as a digital creator, producing video content on platforms such as YouTube and TikTok.
Visit Victor's site (Spanish)
BSD 3-Clause License.
