Automatically creates Flowcharts from Pseudocode!
https://www.youtube.com/watch?v=1gCqPBzU8Z0
If you don't want to download this or setup python, you can run this project directly from your browser with repl.it
This link will automatically clone the project and set it up for you. If you want to do it manually, you can import github.com/MugilanGN/Flowchart-Generator into repl.it yourself.
From here onwards, you can edit the enter.txt file in the repl project and replace it with your own custom pseudocode.
Once you are done, you can run the commands from the CLI Usage section of the README in the repl.it terminal.
This project was built on Python 3.7.4
Run this to install the necessary dependencies:
pip install Pillow==9.0.0 click
Next, clone this project onto your system.
The Pseudocode is entered into a .txt file. It follows strict rules which must be obeyed
STOP and START are automatically input by the program, so do not need to be added
Indents don't affect the program, so nothing has to be indented, and incorrect indentation is allowed
The capitalization of the keywords is extremely important. If an error occurs, double check if you have capitalized the keywords like "TO" and "FOR" properly
ELSE IF is not available, but nested IFs are possible
The ENDIF, NEXT var, and ENDWHILE blocks are mandatory
- INPUT x
- OUTPUT x
INPUT X
OUTPUT var
OUTPUT "hello"
- IF condition THEN
- ELSE
- ENDIF
IF x < 3 THEN
OUTPUT X
ELSE
OUTPUT x*2
ENDIF
The else statement is optional (ENDIF is still necessary)
IF x < 3 THEN
OUTPUT X
ENDIF
x = x + 1
y = x / 2
- WHILE condition DO
- ENDWHILE
WHILE x < 5 DO
OUTPUT x
ENDWHILE
- FOR var <- start TO end
- NEXT var
FOR i <- 1 TO 5
OUTPUT i
NEXT i
To run the code, simply execute the following command:
python Converter.py
Arguments in the CLI are typed like so: --size=20
or --code="enter.txt"
--size
is the font size used. This controls the size of the entire flowchart as well. By default it is 20px--font
is the font path. A default NotoSans font is used at "./fonts/", but can be changed for different OSs or fonts--output
is the flowchart's image file. Default is "flowchart.png"--code
is the file with the pseudocode. Defaults to "enter.txt"--help
provides CLI help
For example:
python Converter.py --code="code.txt" --size=30 --output="result.png"
This image contains the created flowchart which can be shared, printed, etc. Its size varies exactly on the size of the flowchart created, so it may even hit a resolution of 10k pixels! However if the generated flowchart is too big, then the image will be unopenable due to being too large. The user should be careful with flowchart sizes.
If you are having issues, please let me know. You can contact me at mugi.ganesan@gmail.com