{"id":17150178,"url":"https://github.com/jfcalvo/yoko","last_synced_at":"2025-04-13T11:52:12.901Z","repository":{"id":28963991,"uuid":"32490255","full_name":"jfcalvo/yoko","owner":"jfcalvo","description":"Yoko is a small framework to make games with ruby (mruby). ","archived":false,"fork":false,"pushed_at":"2016-10-28T16:42:25.000Z","size":865,"stargazers_count":5,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T03:03:30.716Z","etag":null,"topics":["c","game","mruby","sdl","sdl2"],"latest_commit_sha":null,"homepage":"","language":"C","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/jfcalvo.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}},"created_at":"2015-03-18T23:40:21.000Z","updated_at":"2021-08-09T02:00:37.000Z","dependencies_parsed_at":"2022-08-17T19:15:14.482Z","dependency_job_id":null,"html_url":"https://github.com/jfcalvo/yoko","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfcalvo%2Fyoko","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfcalvo%2Fyoko/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfcalvo%2Fyoko/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jfcalvo%2Fyoko/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jfcalvo","download_url":"https://codeload.github.com/jfcalvo/yoko/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710438,"owners_count":21149188,"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":["c","game","mruby","sdl","sdl2"],"created_at":"2024-10-14T21:35:01.125Z","updated_at":"2025-04-13T11:52:12.878Z","avatar_url":"https://github.com/jfcalvo.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Yoko](yoko.png)\n\n**Yoko** is a small framework to make games with ruby. Yoko use mruby to allow your game be compiled for different platforms.\n\nIt is inspired by other frameworks like [LÖVE](http://www.love2d.org) but following another ideas and patterns.\n\n# Warning\n\nYoko is in a very early stage of development (let's say that it's an alpha version) so we can't ensure that API will not change in the future.\n\n# Examples\n\nA simple example of how to show a rotating square on screen is the following:\n\n```ruby\nsquare = nil\n\nconfig do |conf|\n  conf.window.title = 'Rotating Square Example'\n  conf.window.width = 800\n  conf.window.height = 600\n  conf.window.fullscreen = :exclusive # :desktop, :exclusive or :windowed (default)\nend\n\nload do\n  square = load_sprite('my_square_image.png')\n  square.x, square.y = 50, 50\nend\n\nupdate do\n  square.angle += 2.0\n\n  quit if key_pressed? :escape\nend\n\ndraw do\n  square.draw\nend\n\nquit do\n  puts 'Closing our rotating square example!'\nend\n\nYoko.loop\n```\n\n# Install\n\n## Dependencies\n\nFirst you need to have installed some Yoko dependencies:\n\n- SDL2\n- SDL2_Image\n\nYou can easily install them with brew (on MacOS):\n\n```sh\n$ brew install sdl2 sdl2_image\n```\n\nor with apt-get (on Debian-based distributions):\n\n```\n# apt-get install libsdl2-dev libsdl2-image-dev\n```\n\n## Compilation\n\nAfter install dependencies you can compile yoko:\n\n```sh\n$ make\n```\n\nThis will create some files under the `bin` directory, `yoko` interpreter and the interactive shell `iyoko`.\n\nYou can execute your game with `yoko`:\n\n```sh\n$ cd bin\n$ ./yoko game.rb\n```\n\n# API\n\nTODO\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjfcalvo%2Fyoko","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjfcalvo%2Fyoko","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjfcalvo%2Fyoko/lists"}