{"id":35081040,"url":"https://github.com/konnorrogers/dragonruby-sprite-kit","last_synced_at":"2026-05-24T01:01:19.611Z","repository":{"id":310006204,"uuid":"949308752","full_name":"KonnorRogers/dragonruby-sprite-kit","owner":"KonnorRogers","description":"An embeddable sprite manager for DragonRuby","archived":false,"fork":false,"pushed_at":"2026-05-07T13:23:33.000Z","size":38394,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-14T12:05:08.995Z","etag":null,"topics":["dragonruby","dragonruby-gtk","dragonrubygtk"],"latest_commit_sha":null,"homepage":"https://konnorrogers.github.io/dragonruby-sprite-kit/tags/main","language":"Ruby","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/KonnorRogers.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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},"funding":{"github":["konnorrogers"]}},"created_at":"2025-03-16T06:33:40.000Z","updated_at":"2026-05-03T14:14:06.000Z","dependencies_parsed_at":"2025-08-15T05:34:47.797Z","dependency_job_id":"2052e358-c30a-44ba-9586-9660acdcfba8","html_url":"https://github.com/KonnorRogers/dragonruby-sprite-kit","commit_stats":null,"previous_names":["konnorrogers/dragonruby-sprite-kit"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/KonnorRogers/dragonruby-sprite-kit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KonnorRogers%2Fdragonruby-sprite-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KonnorRogers%2Fdragonruby-sprite-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KonnorRogers%2Fdragonruby-sprite-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KonnorRogers%2Fdragonruby-sprite-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KonnorRogers","download_url":"https://codeload.github.com/KonnorRogers/dragonruby-sprite-kit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KonnorRogers%2Fdragonruby-sprite-kit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33417489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T22:14:44.296Z","status":"ssl_error","status_checked_at":"2026-05-23T22:14:43.778Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["dragonruby","dragonruby-gtk","dragonrubygtk"],"created_at":"2025-12-27T12:58:03.341Z","updated_at":"2026-05-24T01:01:19.605Z","avatar_url":"https://github.com/KonnorRogers.png","language":"Ruby","funding_links":["https://github.com/sponsors/konnorrogers"],"categories":[],"sub_categories":[],"readme":"# DragonRuby Sprite Kit\n\n## What is this?\n\nRight now Sprite Kit is a basic utility helper for me with things I want to carry between projects.\n\nThings like\n\n- Making spritesheets easier to work with (Most asset packs ship as spritesheets and are annoying to work with)\n- Map editors / Level Editors\n- Who knows what else?\n\nSprite Kit is built for DragonRuby with the intent of you extending it. Its designed to take the place of external tools you may use.\n\n## Using degit\n\n`npx degit konnorrogers/dragonruby-sprite-kit/mygame/lib ./mygame/vendor/sprite_kit`\n\n## Download a zip from releases\n\n## Working with Spritesheets\n\nI personally found working with Spritesheets (images containing multiple assets inside) particularly painful with DragonRuby.\n\nSo lets start with the basics. Not everyone will need a Map Editor. But everyone will probably end up working with a spritesheets full of many sprites.\n\n### Rendering the Canvas\n\nThe SpriteCanvas is a scene designed for viewing your sprites. Its a large \"infinite\" canvas where you can drop spritesheets and see them appear.\n\n```rb\nrequire \"vendor/sprite_kit/sprite_kit.rb\"\n\ndef tick(args)\n  args.state.spritesheet_scene ||= SpriteKit::Scenes::SpritesheetScene.new\n  args.state.spritesheet_scene.tick(args)\nend\n```\n\nThe above will render a canvas for you to select your sprites from a canvas and copy them your clipboard.\n\n## Scene Manager\n\nIf you would like, DragonRuby Sprite Kit also ships with Scene Manager and Scenes.\n\n```rb\nclass MainScene \u003c SpriteKit::Scene\n  def render\n    draw_buffer.primitives \u003c\u003c {\n      x: Grid.w / 2,\n      y: Grid.h / 2,\n      text: \"Hello World\"\n    }.label!\n  end\nend\n\nclass Game\n  def initialize\n    @scene_manager = SpriteKit::SceneManager.new(\n      current_scene: :main_scene,\n      scenes: {\n        main_scene: MainScene,\n      }\n    )\n  end\n\n  def tick(args)\n    @scene_manager.tick(args)\n  end\nend\n\ndef tick(args)\n  $game ||= Game.new\n  $game.tick(args)\nend\n\ndef reset\n  $game = nil\nend\n\n$gtk.reset\n```\n\n## Map Editor (Maybe?)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonnorrogers%2Fdragonruby-sprite-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkonnorrogers%2Fdragonruby-sprite-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkonnorrogers%2Fdragonruby-sprite-kit/lists"}