{"id":14991203,"url":"https://github.com/chigraph/chigraph","last_synced_at":"2025-04-05T09:06:49.752Z","repository":{"id":44430226,"uuid":"60776831","full_name":"chigraph/chigraph","owner":"chigraph","description":"A visual systems language for beginners compiled using LLVM","archived":false,"fork":false,"pushed_at":"2023-09-26T02:46:38.000Z","size":66542,"stargazers_count":414,"open_issues_count":29,"forks_count":74,"subscribers_count":32,"default_branch":"master","last_synced_at":"2025-03-29T08:06:10.930Z","etag":null,"topics":["chigraph","dataflow","dataflow-programming","language","language-learning","learn-to-code","llvm"],"latest_commit_sha":null,"homepage":"https://chigraph.io","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chigraph.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}},"created_at":"2016-06-09T13:27:37.000Z","updated_at":"2025-03-23T13:39:18.000Z","dependencies_parsed_at":"2023-01-29T18:00:47.958Z","dependency_job_id":"1df2a4c1-cf1f-4857-b384-6281fcd82b32","html_url":"https://github.com/chigraph/chigraph","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigraph%2Fchigraph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigraph%2Fchigraph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigraph%2Fchigraph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chigraph%2Fchigraph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chigraph","download_url":"https://codeload.github.com/chigraph/chigraph/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247312077,"owners_count":20918344,"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","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":["chigraph","dataflow","dataflow-programming","language","language-learning","learn-to-code","llvm"],"created_at":"2024-09-24T14:21:44.244Z","updated_at":"2025-04-05T09:06:49.704Z","avatar_url":"https://github.com/chigraph.png","language":"C++","readme":"***DISCLAIMER: CHIGRAPH IS IN PRE-PRE-PRE-PRE ALPHA STATUS AND MAY NEVER REACH A STABLE RELEASE. IT'S A TOY PROJECT AS A PROOF OF CONCEPT.***\n\n![chigraph logo](doc/images/chigraph.png)\n\n[![Coveralls](https://img.shields.io/coveralls/chigraph/chigraph.svg?style=flat-square)](https://coveralls.io/github/chigraph/chigraph)    [![Gitter](https://img.shields.io/gitter/room/nwjs/nw.js.svg?style=flat-square)](https://gitter.im/chigraph/)\n\n\n__Build Status__\n\nPlatform | Status\n----- |  ----\n| Linux/macOS    | [![Travis branch](https://img.shields.io/travis/chigraph/chigraph/master.svg?style=flat-square)](https://travis-ci.org/chigraph/chigraph) |\n| Windows        |  [![AppVeyor](https://img.shields.io/appveyor/ci/guapotaco/chigraph-miekk.svg?style=flat-square)](https://ci.appveyor.com/project/GuapoTaco/chigraph-miekk) |\n| Buildbot (in development)      | [Buildbot](https://ci.chigraph.io/) |\n\n# What is chigraph?\nChigraph,  pronunced chai-graph, is a new systems programming language. It's fast. It's scalable. And, more importantly, it's easy to learn. How does it achieve such goals? By scrapping the age-old standard of text (not entirely though). Here's a screenshot from [the Qt5 GUI](https://github.com/chigraph/chigraph-gui):\n\n![Screenshot](doc/screenshots/HelloWorld.png)\n\n\u003e **NOTE**\n\u003e This is the repository for the chigraph language. If you are looking for the interface that goes along with it, see https://github.com/chigraph/chigraph-gui\n\n# Components\nChigraph is made up of three components:\n\n## chi\nchi is the command line interface to chigraph. It lets you compile and run chigraph modules:\n```bash\n$ pwd\n~/chigrpah/src/\n$ chi get github.com/russelltg/hellochigraph/hello/main # download it\n$ cd github.com/russelltg/hellochigraph/hello/main\n$ chi run main.chimod # run it\nHello World!\n```\n\n## libchigraph\nlibchigraph is the chigraph library that provides all functions for chigraph clients, like code generation, graph representation, etc. Want to compile a chigraph module using libchigraph? ([documentation](https://chigraph.github.io/chigraph/))\n\n```C++\n#include \u003cchi/Context.hpp\u003e\n\nint main() {\n    chi::Contxt myContext{\"/path/to/workspace\"};\n\n    // download and load the module\n    myContxt.loadModule(\"github.com/russelltg/hellochigraph/hello/main\", chi::LoadOptions::FetchDependencies);\n\n    // compile it\n    llvm::Module* mod;\n    myContxt.compileModule(\"github.com/russelltg/hellochigraph\", \u0026mod);\n}\n```\n\nAnd tada, you have yourself a [`llvm::Module`](http://llvm.org/docs/doxygen/html/classllvm_1_1Module.html) to do whatever you wish to. It'll have all it's dependencies linked in and a main function waiting to run.\n\n## libchigraphdebugger\nlibchigraphdebugger is a library that makes it easy to implement chigraph debuggers. See [the `Debugger` documentation](https://chigraph.github.io/chigraph/classchi_1_1Debugger.html) for more details.\n\n# Licensing\nIt's free!\nChigraph is licensed under the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0) so anyone can use it for free, even in proprietary settings (solong you attribute me)\n\n# API Documentation\nAPI Documentation (generated by [doxygen](http://doxygen.org)) can be found [here](https://api.chigraph.io/).\n\n# Installation\n## Download installers/appimage\nInstallers and appimages are avaliable from the [releases page](https://github.com/chigraph/chigraph/releases) (coming soon) for those who don't want to build from sources.\n\n## Building from source\nSee the [guide on building from source](doc/building.md)\n\n# Get Involved\nGetting involved is easy!\nIf you don't know where to get started, start looking at [filed github issues](https://github.com/chigraph/chigraph/issues) for inspiration. Then just file a PR!\n\nIf you have any questions, you're more than welcome to email me: [russellgreene8@gmail.com](mailto:russellgreene8@gmail.com)\n\n# Authors\n\n- Russell Greene (@russelltg) - Main contributor\n- Aun-Ali Zaidi (@aunali1) - Helped with some platform stuff, packaging\n\n\n# Technology used\n- [LLVM/Clang](http://llvm.org) for compilation\n- [libgit2](https://libgit2.github.com/) for downloading remote modules\n- [Catch](https://github.com/philsquared/Catch/) for unit tests\n- [boost](https://boost.org) for [filesystem](http://www.boost.org/doc/libs/1_63_0/libs/filesystem/doc/index.htm), [parsing program arguments](http://www.boost.org/doc/libs/1_63_0/doc/html/program_options.html), [uuid](http://www.boost.org/doc/libs/1_63_0/libs/uuid/uuid.html), [bimap](http://www.boost.org/doc/libs/1_63_0/libs/bimap/doc/html/index.html), [range](http://www.boost.org/doc/libs/1_63_0/libs/range/doc/html/index.html), [dynamic_bitset](http://www.boost.org/doc/libs/1_63_0/libs/dynamic_bitset/dynamic_bitset.html)\n\n\u003e Written with [StackEdit](https://stackedit.io/).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigraph%2Fchigraph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchigraph%2Fchigraph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchigraph%2Fchigraph/lists"}