{"id":21988915,"url":"https://github.com/alessandro-salerno/calgo","last_synced_at":"2025-10-10T20:31:47.610Z","repository":{"id":131799899,"uuid":"413582762","full_name":"Alessandro-Salerno/Calgo","owner":"Alessandro-Salerno","description":"A poorly written dead project for a flowchart builder","archived":false,"fork":false,"pushed_at":"2022-01-21T18:46:15.000Z","size":54,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-03T14:42:12.087Z","etag":null,"topics":["bad-code","c","dead-project","flowchart","school-project"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Alessandro-Salerno.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-10-04T21:05:05.000Z","updated_at":"2023-10-18T18:12:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"4f377bd5-36ec-42a4-b853-f3e98026cfd8","html_url":"https://github.com/Alessandro-Salerno/Calgo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Alessandro-Salerno/Calgo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alessandro-Salerno%2FCalgo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alessandro-Salerno%2FCalgo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alessandro-Salerno%2FCalgo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alessandro-Salerno%2FCalgo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Alessandro-Salerno","download_url":"https://codeload.github.com/Alessandro-Salerno/Calgo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alessandro-Salerno%2FCalgo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279005271,"owners_count":26083863,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bad-code","c","dead-project","flowchart","school-project"],"created_at":"2024-11-29T19:26:27.063Z","updated_at":"2025-10-10T20:31:47.605Z","avatar_url":"https://github.com/Alessandro-Salerno.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Calgo\nCalgo is a flowchart building program.\nCurrently, it is in the pre-alpha phase of development.\n\nCalgo works by converting a string of text, placed inside a text file (Usually ending with `.calgo`), into a tree of nodes known as an AST (Abstract Syntax Tree), just like any normal language compiler, this can then be used as an abstract rapresentation of the flowchart. Keep in mind that CalgoAST is not mature yet and, due to its nature, it is much more basic than a normal language AST.\nThe resulting nodes are then used by the Calgo ASCII Renderer to display a concrete version f the diagram.\n\nCalgo is written in C and uses no external libraries, all the memory management, table/diagram rendering, lexing, parsing, etc have been built from scratch.\nSo, given the young age of the project, memory leaks, bugs and inconsistent behaviour are the norm. Most issues are already known, some include:\n* Heap memory leaks (Missing string and vector deallocation systems)\n* String length has to be determined on the fly since charptr doesnt save it (Strings will soon be turned into a struct of some sort)\n* Bad code in some newer areas (Such as table.c, calgo.c and main.c)\n* Segfaults when the language lexer fails to recognize a keyword\n* And much more\n\nAll these issues are in the process of being fixed, but the early stage of the project impose more focus on new features, rather than optimization.\nPlans for future features incldue:\n* Basic diagram rendering (Start, Input, Oputput, Declaration \u0026 Assignment, End)\n* Advanced diagram rendering (Functions, If statements, loops)\n* Diagram execution (Small VM)\n* Diagram exporting\n\nIf you want to try Calgo anyway, you can do so by cloning this repository and running the make.py file. Keep in mind that you need the GNU Compiler Collection (GCC), on MS Windows, you can use MinGW, on macOS XCode Dev Tools and, for Linux, the built-in GCC installation.\nA cmake replacement for make.py is coming, but keep in mind that you will still need a modern C Compiler (So forget Dev C).\nWARNING: Calgo curently refuses to run on Replit!\n\nLnux/macOS:\n```\n\u003e git clone https://github.com/tzyvoski/Calgo.git\n\u003e cd Calgo\n\u003e python3 make.py\n\u003e ./Calgo.out help\n```\n\nMS Windows:\n```\n\u003e git clone https://github.com/tzyvoski/Calgo.git\n\u003e cd Calgo/\n\u003e make.py\n\u003e Calgo.exe help\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falessandro-salerno%2Fcalgo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falessandro-salerno%2Fcalgo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falessandro-salerno%2Fcalgo/lists"}