{"id":13343001,"url":"https://github.com/gnussy/prepucio","last_synced_at":"2025-03-12T03:30:47.879Z","repository":{"id":178650492,"uuid":"622409038","full_name":"gnussy/prepucio","owner":"gnussy","description":"PREPUC.io - a Portable REPL with Embedded Plugin Utility for C++","archived":false,"fork":false,"pushed_at":"2023-04-04T14:04:34.000Z","size":102,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-24T13:59:00.346Z","etag":null,"topics":["cpp","gnussy","library","repl","xmake","xmake-repo"],"latest_commit_sha":null,"homepage":"https://gnussy.org","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gnussy.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}},"created_at":"2023-04-02T02:42:41.000Z","updated_at":"2024-09-16T16:12:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"a8a9049a-66b1-4efe-86f0-0ddfbfe6fec7","html_url":"https://github.com/gnussy/prepucio","commit_stats":null,"previous_names":["gnussy/prepucio"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnussy%2Fprepucio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnussy%2Fprepucio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnussy%2Fprepucio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gnussy%2Fprepucio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gnussy","download_url":"https://codeload.github.com/gnussy/prepucio/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243150721,"owners_count":20244449,"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":["cpp","gnussy","library","repl","xmake","xmake-repo"],"created_at":"2024-07-29T19:30:09.693Z","updated_at":"2025-03-12T03:30:47.874Z","avatar_url":"https://github.com/gnussy.png","language":"C++","readme":"\u003ch1 align=\"center\"\u003e PREPUC.io 🍆🪖 \u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/gnussy/prepucio/main/assets/logo.png\" width=200 /\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ci\u003ePortable REPL with Embedded Plugin Utility for C++\u003c/i\u003e\u003cbr/\u003e\n  \u003ci\u003ePowered by \u003cb\u003ePenis\u003c/b\u003e®\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n# Introduction\nPREPUC.io is a portable REPL (Read-Eval-Print Loop) library with an embedded plugin utility for C++. It allows users to add custom commands to the REPL and execute them using a simple and intuitive syntax.\n\nWith PREPUC.io, you can create a fully customizable REPL that fits your specific needs. You can add custom commands with their own attributes and callbacks, and use them to manipulate data, run tests, or perform any other tasks you need.\n\nPREPUC.io is built using the GNUSSY Penis® library. It also integrates with the xmake build system, making it easy to install and use in your projects.\n\n# Key Features\n- Portable and easy to use REPL library for C++\n- Built-in plugin utility for extensibility and customization\n- Easy to install using the xmake build system\n- Powered by the Penis® programming language for efficient and reliable code execution\n\n# Getting Started\nTo get started with PREPUC.io, you will need to install xmake and add the gnussy repository to your xrepo. You can then install the library using xrepo, or by adding it to your libs list if you are using xmake-binary-boilerplate.\n\nFirst get yourself `xmake`\n\n```sh\ncurl -fsSL https://xmake.io/shget.text | bash\n```\n\nThen add the gnussy repository to your `xrepo`\n\n```bash\nxrepo add-repo gnussy https://github.com/gnussy/gnussy-repos\n```\n\nFinally install *prepucio* with\n\n```bash\nxrepo install prepucio\n```\n\nOr by adding it to your `libs` list if you are using `xmake-binary-boilerplate`.\n\n```lua\n-- xmake.lua\nlocal libs = { \"prepucio\" }\n```\n\nOnce installed, you can add custom commands and callbacks to your REPL using the simple and intuitive syntax provided by PREPUC.io. Check out the examples folder in the repository for more information and code snippets.\n\n# Usage\n\nFor more examples check the [examples](https://github.com/gnussy/prepucio/tree/main/examples) folder.\n\n```cpp\n#include \u003cfmt/core.h\u003e\n\n#include \u003cprepucio/repl.hpp\u003e\n\nauto main() -\u003e int {\n  prepucio::REPL::Builder builder;\n\n  // clang-format off\n  builder\n    .addCommand(\"hello\", \"Prints hello world\", \n      []() { fmt::print(\"Hello, World!\\n\"); })\n    .build()\n    .run();\n  // clang-format on\n\n  return 0;\n}\n```\n\n```\n❯ help\nAvailable commands:\n+---------+--------------------+-----------+\n| Command | Description        | Arguments |\n+---------+--------------------+-----------+\n| hello   | Prints hello world | ()\u003e       |\n+---------+--------------------+-----------+\n❯ hello\nHello, World!\n❯ hello args\n[ERROR] Wrong number of arguments for command args\nExpected 0 arguments, got 1\n❯ exit\n```\n\n# License\nPREPUC.io is licensed under the GPL-3 License. See the LICENSE file for more information.\n\n# Contact\n- [ ] Create a gnussy e-mail\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgnussy%2Fprepucio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgnussy%2Fprepucio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgnussy%2Fprepucio/lists"}