{"id":31679248,"url":"https://github.com/lukeonuke/signshop","last_synced_at":"2025-10-08T06:47:27.499Z","repository":{"id":315762905,"uuid":"1060315135","full_name":"LukeOnuke/signshop","owner":"LukeOnuke","description":"The all in one player shop solution for fabric servers. Idea based off chestshop for bukkit.","archived":false,"fork":false,"pushed_at":"2025-09-20T14:16:28.000Z","size":40,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-20T16:23:47.629Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","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/LukeOnuke.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-19T17:53:14.000Z","updated_at":"2025-09-20T14:16:32.000Z","dependencies_parsed_at":"2025-09-20T16:37:21.818Z","dependency_job_id":null,"html_url":"https://github.com/LukeOnuke/signshop","commit_stats":null,"previous_names":["lukeonuke/signshop"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/LukeOnuke/signshop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeOnuke%2Fsignshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeOnuke%2Fsignshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeOnuke%2Fsignshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeOnuke%2Fsignshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LukeOnuke","download_url":"https://codeload.github.com/LukeOnuke/signshop/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeOnuke%2Fsignshop/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278903008,"owners_count":26065786,"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-08T02:00:06.501Z","response_time":56,"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":[],"created_at":"2025-10-08T06:47:21.257Z","updated_at":"2025-10-08T06:47:27.490Z","avatar_url":"https://github.com/LukeOnuke.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# signshop\nThe all-in-one player shop solution for fabric servers. Idea based off \nchestshop for bukkit.\n\nStill in alpha, technical documentation in the works.\n\nDocument index:\n- 1 Player guide\n- 2 Admin guide\n  - 2.1 First setup\n  - 2.2 Configuration\n    - Message prefix\n- 3 Technical documentation\n\n# Player guide\n\u003e [!TIP]\n\u003e This section of the README contains a tutorial on how to use the mod as a \n\u003e player, if you are looking for the admin guide, go down to the ***admin \n\u003e guide*** section of the README.\n\nTo create a signshop hold a **redstone dust** in your main hand. Click on the \ncontainer containing the items, then click on the chest containing the price.\nContainer containing the price at first must contain the item and the amount of\nitem(s) you plan to charge. The item container must contain the item you plan \non selling and the amount of items you plan to sell.\n\nAfter you have clicked on both the item and price container click on a sign \nthat has `[trade]` as its first line. Sign has to have `[trade]` as its first \nline, the rest can have whatever text you want.\n\n*As of 0.0.2-ALPHA* signshop supports every storage block. e.g. Chests, hoppers\nshulkerboxes, barrels, trapped chests.\n\n# Admin guide\nThis section of the README goes over administration when using this plugin.\n## First setup\nThis plugin requires a database connection, create a database and set the \nparameters in the config `config/signshop/config.properties`. Admin commands \ncoming soon.\n\n```properties\ndatabase.password=password\ndatabase.url=jdbc\\:mysql\\://localhost\\:3000/signshop\ndatabase.user=user\n```\n\n## Configuration\nNon-essential plugin configuration.\n### Message prefix\nYou can change the prefix that is added to messages this plugin gives to\nplayers and admins. In an example message `signshop \u003e\u003e Shop created \nsucsessfully!`, the prefix is `signshop \u003e\u003e `.\n```properties\nprefix=§2§lsignshop§r \u003e\u003e \n```\nThe prefix can be disabled by simply leaving this as an empty string.\n```properties\nprefix=\n```\n\n# Technical documentation\nThis section of the README goes over the technical inner workings of the\nsignshop mod.\n\u003e [!NOTE]\n\u003e This part of the text is still being written.\n## Method of operation\nSignshop operates signs using the `SignEventListener`, it listens to:\n- block break events\n- block attack events\n- block use events\n\n## Nomenclature\nAll mod code is situated in main *(server side module)*, packages all are \nsituated in `com.lukeonuke`. They are separated as follows:\n- `.event` - Houses event listeners, currently only `SignEventListener`\n- `.mixin` - Isn't used, likely to be removed.\n- `.model` - Houses database data models.\n  - `.model.nondb` - Houses models for data that isn't stored in the database.\n- `.service` - Houses services.\n\n### Service class naming\nClasses that end in `Util`, e.g. `ShopUtil` or `InventoryUtil` house static \nmethods. Classes that end in `Service` are usually singletons.\n\n## Filesystem usage\nOnly file this mod operates directly is stored in `/config/signshop` directory.\nThe said file is the configuration file *(see: section Configuration of the \nadmin guide)* *(see: section First setup of the admin guide)* \n`config.properties`.\n\n## Why caching isn't used?\nIt the mods intended use case, where the database is hosted on the same machine\nor in the same building as the game server, the delay between a request and a\nresponse is so little that there is no need to add additional code to cache\nand validate the cache.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukeonuke%2Fsignshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukeonuke%2Fsignshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukeonuke%2Fsignshop/lists"}