{"id":22032348,"url":"https://github.com/vaiorabbit/raylib-bindings","last_synced_at":"2025-04-05T12:02:43.166Z","repository":{"id":56891023,"uuid":"418042909","full_name":"vaiorabbit/raylib-bindings","owner":"vaiorabbit","description":"Yet another Ruby-raylib bindings","archived":false,"fork":false,"pushed_at":"2025-02-23T05:56:37.000Z","size":117822,"stargazers_count":49,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-29T11:06:10.501Z","etag":null,"topics":["game-development","games","raylib","ruby"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vaiorabbit.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSE.txt","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":"2021-10-17T06:36:26.000Z","updated_at":"2025-03-26T08:00:01.000Z","dependencies_parsed_at":"2023-02-15T17:01:34.733Z","dependency_job_id":"cb3acf9c-240c-4858-99d3-3f86d81b7582","html_url":"https://github.com/vaiorabbit/raylib-bindings","commit_stats":{"total_commits":225,"total_committers":3,"mean_commits":75.0,"dds":0.05777777777777782,"last_synced_commit":"ec02dd04522f0a005777f731207825b2a9427e65"},"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaiorabbit%2Fraylib-bindings","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaiorabbit%2Fraylib-bindings/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaiorabbit%2Fraylib-bindings/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaiorabbit%2Fraylib-bindings/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vaiorabbit","download_url":"https://codeload.github.com/vaiorabbit/raylib-bindings/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247332560,"owners_count":20921853,"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":["game-development","games","raylib","ruby"],"created_at":"2024-11-30T08:27:43.700Z","updated_at":"2025-04-05T12:02:43.157Z","avatar_url":"https://github.com/vaiorabbit.png","language":"C","readme":"\u003c!-- -*- mode:markdown; coding:utf-8; -*- --\u003e\n\n# Yet another raylib wrapper for Ruby #\n\n*   Created : 2021-10-17\n*   Last modified : 2025-03-29\n\nProvides Ruby bindings for raylib-related libraries including:\n\n*   [raylib](https://github.com/raysan5/raylib) version [5.6-dev]( https://github.com/raysan5/raylib/commit/9a049d1d27e3fe92c2591bc190b7f497b5f0283e )\n    *   raylib\n    *   raymath\n    *   rlgl\n*   [raygui](https://github.com/raysan5/raygui) version [5.0-dev]( https://github.com/raysan5/raygui/commit/ea928f56091078aad9af847a1607c22f06c5992f )\n*   [Physac](https://github.com/raysan5/physac) version [1.1]( https://github.com/raysan5/physac/commit/4a8e17f263fb8e1150b3fbafc96f880c7d7a4833 )\n\n\u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/bitmap_font_rb.png\" width=\"125\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/game_of_life_simple_rb.png\" width=\"125\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/lissajous_curve_rb.png\" width=\"125\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/procedural_texture_rb.png\" width=\"125\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/reversi_board_rb.png\" width=\"125\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/utf8_font_rb.png\" width=\"125\"\u003e\n\n## Features ##\n\n*   Generated semi-automatically\n*   Based on Ruby/FFI ( https://github.com/ffi/ffi )\n*   Pre-built binaries are inside:\n    *   Windows (x86_64)\n    *   macOS (x86_64, ARM64)\n    *   Linux (x86_64, ARM64)\n\n## Quick Start ##\n\n```\nD:\\\u003e gem install raylib-bindings\nFetching raylib-bindings-...\n...\n1 gem installed\n\nD:\\\u003e ruby -r raylib -e 'Raylib.template'\n[Info] Raylib.template : C:/Ruby31-x64/lib/ruby/gems/3.1.0/gems/raylib-bindings-0.0.11/examples/template.rb =\u003e d://template.rb\n[Info] Raylib.template : Done\n\nD:\\\u003e ruby template.rb\n```\n↓\n\n\u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings/main/doc/template_screenshot.png\" width=\"400\"\u003e\n\n## Prerequisites ##\n\n*   Ruby interpreter\n    *   Tested on:\n        *   [macOS] https://rvm.io\n            *   ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [arm64-darwin24]\n        *   [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit\n            *   ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [x64-mingw-ucrt]\n        *   [Linux/x86_64 WSL] https://github.com/rvm/ubuntu_rvm\n            *   ruby 3.2.0preview1 (2022-04-03 master f801386f0c) [x86_64-linux]\n        *   [Linux/ARM64 Chromebook] https://github.com/rvm/ubuntu_rvm\n            *   ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [aarch64-linux]\n\n*   If you need to build DLLs/shared libralies for your own runtime envrioenment (Linux, etc.):\n    *   CMake https://cmake.org/download/\n    *   C Compiler\n        *   Tested compilers:\n            *   [macOS] clang\n\n                    $ clang --version\n                    Apple clang version 16.0.0 (clang-1600.0.26.6)\n                    Target: arm64-apple-darwin24.2.0\n                    Thread model: posix\n                    InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n            *   [Windows] gcc\n\n                    gcc (Rev3, Built by MSYS2 project) 13.2.0\n\n            *   [Linux] gcc, clang\n\n                    (x86_64) Ubuntu clang version 14.0.0-1ubuntu1\n                    (arm64) Debian clang version 14.0.6\n\n\u003cdetails\u003e\n\u003csummary\u003eOlder versions\u003c/summary\u003e\n\n*   Ruby interpreter\n    *   Tested on:\n        *   [macOS]\n            *   ruby 3.3.3 (2024-06-12 revision f1c7b6f435) [arm64-darwin23]\n            *   ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]\n            *   ruby 3.2.1 (2023-02-08 revision 31819e82c8) [arm64-darwin22]\n            *   ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]\n            *   ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [arm64-darwin21]\n            *   ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin20]\n            *   ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin20]\n        *   [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit\n            *   ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x64-mingw-ucrt]\n            *   ruby 3.2.0 (2022-12-25 revision a528908271) [x64-mingw-ucrt]\n            *   ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x64-mingw-ucrt]\n            *   ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236) [x64-mingw-ucrt]\n            *   ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]\n        *   [Linux/ARM64 Chromebook] https://github.com/rvm/ubuntu_rvm\n            *   ruby 3.2.0 (2022-12-25 revision a528908271) [aarch64-linux]\n\n*   Compiler\n    *   Tested on:\n        *   [macOS] clang\n\n                $ clang --version\n                Apple clang version 15.0.0 (clang-1500.3.9.4)\n                Target: arm64-apple-darwin23.4.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n                $ clang --version\n                Apple clang version 15.0.0 (clang-1500.0.40.1)\n                Target: arm64-apple-darwin23.0.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n                $ clang --version\n                Apple clang version 14.0.0 (clang-1400.0.29.202)\n                Target: arm64-apple-darwin22.2.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n                $ clang --version\n                Apple clang version 13.1.6 (clang-1316.0.21.2.5)\n                Target: arm64-apple-darwin21.5.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n                $ clang --version\n                Apple clang version 13.1.6 (clang-1316.0.21.2.3)\n                Target: arm64-apple-darwin21.5.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n                Apple clang version 13.0.0 (clang-1300.0.29.3)\n                Target: arm64-apple-darwin20.6.0\n                Thread model: posix\n                InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin\n\n        *   [Windows] gcc\n\n                gcc (Rev7, Built by MSYS2 project) 12.2.0\n                gcc (Rev10, Built by MSYS2 project) 11.2.0\n                gcc (Rev9, Built by MSYS2 project) 11.2.0\n\n\u003c/details\u003e\n\n## Projects ##\n\n### Games ###\n\nSee the projects below to learn how to use this library:\n\n*   Whac-a-Mole! : Ruby raylib bindings demo\n    *   \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-whacamole/main/doc/screenshot_00.png\" width=\"300\"\u003e \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-whacamole/main/doc/screenshot_01.png\" width=\"300\"\u003e\n    *   \u003chttps://github.com/vaiorabbit/raylib-bindings-whacamole\u003e\n\n*   1D dot eater : Ruby raylib bindings demo\n    *   \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-pacone/main/doc/screenshot_00.png\" width=\"600\"\u003e\n    *   \u003chttps://github.com/vaiorabbit/raylib-bindings-pacone\u003e\n\n*   flapper.rb : Ruby raylib bindings demo\n    *   \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-flapper/main/doc/screenshot_01.png\" width=\"150\"\u003e\n    *   \u003chttps://github.com/vaiorabbit/raylib-bindings-flapper\u003e\n\n### Libraries ###\n\n*   raylib-bindings-tileson : Provides Ruby bindings for raylib-tileson ( https://github.com/RobLoach/raylib-tileson )\n    *   \u003cimg src=\"https://raw.githubusercontent.com/vaiorabbit/raylib-bindings-tileson/main/doc/screenshot_00.png\" width=\"600\"\u003e\n    *   \u003chttps://github.com/vaiorabbit/raylib-bindings-tileson\u003e\n\n## Limitation ##\n\n*   `SetTraceLogCallback` and `TraceLogCallback` are unusable since Ruby-FFI does not support `:varargs` parameter in callbacks (`Proc`, etc.)\n    *   Ref.: https://ffi.github.io/ruby-ffi-archive/messages/20130214-%5Bruby-ffi%5D%20Re_%20Callback%20Function%20with%20varargs-345.html\n\n*   For macOS users: if you get error messages like “'.... .dylib' not valid for use in process: library load disallowed by system policy” , you can work around it with the following command (although it is not recommended):\n    *   $ xattr -dr com.apple.quarantine (path to the .dylib)\n\n## License ##\n\nShared libraries in `lib` directory are built on top of these products and are available under the terms of these licenses:\n\n*   `libraylib.arm64.dylib`, `libraylib.x86_64.dylib`, `libraylib.dll`, `libraylib.aarch64.so`, `libraylib.x86_64.so`\n    *   raylib ( https://github.com/raysan5/raylib )\n        *   zlib License https://github.com/raysan5/raylib/blob/master/LICENSE\n*   `raygui.arm64.dylib`, `raygui.x86_64.dylib`, `raygui.dll`, `raygui.aarch64.so`, `raygui.x86_64.so`\n    *   raygui ( https://github.com/raysan5/raygui )\n        *   zlib License https://github.com/raysan5/raygui/blob/master/LICENSE\n*   `physac.arm64.dylib`, `physac.x86_64.dylib`, `physac.dll`, `physac.aarch64.so`, `physac.x86_64.so`\n    *   Physac ( https://github.com/raysan5/physac )\n        *   LICENSE: zlib/libpng https://github.com/raysan5/physac/blob/4a8e17f263fb8e1150b3fbafc96f880c7d7a4833/src/physac.h#L51-L68\n\nAll ruby codes here are available under the terms of the zlib/libpng License ( http://opensource.org/licenses/Zlib ).\n\n    Ruby-raylib : Yet another raylib wrapper for Ruby\n    Copyright (c) 2021-2025 vaiorabbit \u003chttp://twitter.com/vaiorabbit\u003e\n\n    This software is provided 'as-is', without any express or implied\n    warranty. In no event will the authors be held liable for any damages\n    arising from the use of this software.\n\n    Permission is granted to anyone to use this software for any purpose,\n    including commercial applications, and to alter it and redistribute it\n    freely, subject to the following restrictions:\n\n        1. The origin of this software must not be misrepresented; you must not\n        claim that you wrote the original software. If you use this software\n        in a product, an acknowledgment in the product documentation would be\n        appreciated but is not required.\n\n        2. Altered source versions must be plainly marked as such, and must not be\n        misrepresented as being the original software.\n\n        3. This notice may not be removed or altered from any source\n        distribution.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaiorabbit%2Fraylib-bindings","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvaiorabbit%2Fraylib-bindings","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaiorabbit%2Fraylib-bindings/lists"}