{"id":19774483,"url":"https://github.com/pro-crafting/commandframework","last_synced_at":"2025-07-02T03:33:56.984Z","repository":{"id":15056916,"uuid":"17783091","full_name":"pro-crafting/CommandFramework","owner":"pro-crafting","description":"A command framework for Bukkit allowing for multiple easy commands","archived":false,"fork":false,"pushed_at":"2023-12-30T18:53:16.000Z","size":85,"stargazers_count":1,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-29T00:09:29.158Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"mcardy/CommandFramework","license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pro-crafting.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":"2014-03-15T19:00:51.000Z","updated_at":"2025-03-31T14:29:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"4b369db5-e08c-4ebd-8015-5609ac894ec3","html_url":"https://github.com/pro-crafting/CommandFramework","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/pro-crafting/CommandFramework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pro-crafting%2FCommandFramework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pro-crafting%2FCommandFramework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pro-crafting%2FCommandFramework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pro-crafting%2FCommandFramework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pro-crafting","download_url":"https://codeload.github.com/pro-crafting/CommandFramework/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pro-crafting%2FCommandFramework/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263070244,"owners_count":23409094,"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":[],"created_at":"2024-11-12T05:13:06.607Z","updated_at":"2025-07-02T03:33:56.957Z","avatar_url":"https://github.com/pro-crafting.png","language":"Java","readme":"[![Version](https://img.shields.io/maven-central/v/com.pro-crafting.mc/commandframework?logo=apache-maven\u0026style=for-the-badge)](https://search.maven.org/artifact/com.pro-crafting.mc/commandframework)\n[![GitHub Actions Status](\u003chttps://img.shields.io/github/actions/workflow/status/pro-crafting/CommandFramework/build.yml?branch=main\u0026logo=GitHub\u0026style=for-the-badge\u003e)](https://github.com/pro-crafting/Common/actions/workflows/build.yml)\n\n\nI created a very lightweight annotation based command system that works similar to Bukkit's events system. It removes the necessity to add the command to your plugin.yml but will still allow you to set descriptions and usages through code.\n\n\n\nExample:\n\n    public class DemoPlugin extends JavaPlugin {\n\n        CommandFramework framework;\n\n        public void onEnable() {\n            framework = new CommandFramework(this);\n            // This will register all the @Command methods in this class. It can be done with any object\n            // Note: Commands do not need to be registered in plugin.yml\n            framework.registerCommands(this);\n            \n            // This will set the default error message, when a command is only executable per player\n            framework.setInGameOnlyMessage(\"Der Command muss von einem Spieler ausgeführt werden.\");\n        }\n    \n        @Command(name = \"test\", aliases = { \"testing\" }, description = \"This is a test command\", usage = \"This is how you use it\", inGameOnly=true)\n       public void test(CommandArgs args) {\n            args.getSender().sendMessage(\"This is a test command\");\n        }\n    }\n\nThis example will create a command called test and register it. It will set the description and usage of the command as well. Notice the aliases option. Aliases will be registered the same way as the regular command and are alternate commands that the method will be invoked with. Here is an example of a sub command:\n\n    @Command(name = \"test.sub\", aliases = { \"test.subcommand\"})\n    public void testSub(CommandArgs args) {\n        args.getSender().sendMessage(\"This is a test subcommand\");\n    }\n\nThis will create a sub command of test and will be executed when someone sends the command '/test sub' or '/test subcommand'. Descriptions and usages also work with these.\n\nThe original Author of this was minnymin3\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpro-crafting%2Fcommandframework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpro-crafting%2Fcommandframework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpro-crafting%2Fcommandframework/lists"}