{"id":25820361,"url":"https://github.com/surajkareppagol/crepl","last_synced_at":"2026-05-25T16:34:26.667Z","repository":{"id":223609782,"uuid":"759673017","full_name":"surajkareppagol/CREPL","owner":"surajkareppagol","description":"🔄 CREPL - C Read Eval Print Loop","archived":false,"fork":false,"pushed_at":"2025-03-21T15:04:18.000Z","size":17,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T16:22:47.612Z","etag":null,"topics":["code","repl"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/surajkareppagol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-02-19T05:39:54.000Z","updated_at":"2025-03-21T15:04:23.000Z","dependencies_parsed_at":"2024-02-21T06:25:40.884Z","dependency_job_id":"8833f59e-d88b-4cff-bf8e-e3b7c617109f","html_url":"https://github.com/surajkareppagol/CREPL","commit_stats":null,"previous_names":["surajkareppagol/crepl"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/surajkareppagol/CREPL","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/surajkareppagol%2FCREPL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/surajkareppagol%2FCREPL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/surajkareppagol%2FCREPL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/surajkareppagol%2FCREPL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/surajkareppagol","download_url":"https://codeload.github.com/surajkareppagol/CREPL/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/surajkareppagol%2FCREPL/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":285986015,"owners_count":27265853,"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-11-23T02:00:06.149Z","response_time":135,"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":["code","repl"],"created_at":"2025-02-28T09:53:46.209Z","updated_at":"2025-11-23T17:02:49.366Z","avatar_url":"https://github.com/surajkareppagol.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CREPL\n\n`CREPL` is REPL (read–eval–print loop) program written in Python for C.\n\n![CREPL](https://raw.githubusercontent.com/surajkareppagol/Assets/main/10%20-%20CREPL/CREPL.gif)\n\n## How It Works ?\n\nThe program has three has three containers for three sections, that is,\n\n- `file_global` for global statements such as `macros`, `global variables` etc.\n- `file_functions` for all the function statements\n- `file_local` for all local statements\n\nThe content from these three lists is written to a temporary `C` file, and it is compiled and executed, the result it displayed, if there are any errors, errors will be displayed.\n\nIf there is an error, the lists will revert back to previous code.\n\n## 🌟 What's New ?\n\n- Restructured the program\n- Added support for multi-line statements\n- Added support for nested statements\n- Used Regex to distinguish local and global statements\n- Add `show` and `global:` or `g:` keyword\n- Add `repeat` or `r` keyword\n\n## C Template\n\n```c\n#include \u003cstdio.h\u003e\n\nint main(){\n\n  return 0;\n}\n```\n\n## Usage\n\n```bash\ngit clone https://github.com/surajkareppagol/CREPL\ncd CREPL\n```\n\nActivate virtual environment,\n\n```bash\npython3 -m venv venv\nsource venv/bin/activate\n```\n\n```bash\npip install -r requirements.txt\n```\n\n```bash\npython3 src/main.py\n```\n\nTo deactivate virtual environment,\n\n```bash\ndeactivate\n```\n\n## Keywords\n\n- `exit` or `exit()`\n  Exit the CREPL by resetting the template.\n\n- `clear` or `clear()`\n  Clear the screen.\n\n- `reset` or `reset()`\n  Reset the template.\n\n- `show` or `show()`\n  View current content of template file.\n\n- `g:` or `global:`\n  Add global statements, use `g: #include \u003cstdlib.h\u003e` or `global: #define MAX 100`\n\n- `repeat` or `r`\n  To execute once again\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsurajkareppagol%2Fcrepl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsurajkareppagol%2Fcrepl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsurajkareppagol%2Fcrepl/lists"}