{"id":15014702,"url":"https://github.com/losinggeneration/lunopunk","last_synced_at":"2025-04-19T19:55:56.254Z","repository":{"id":13707472,"uuid":"16401417","full_name":"losinggeneration/LunoPunk","owner":"losinggeneration","description":"A Moonscript port of HaxePunk/FlashPunk for LÖVE","archived":false,"fork":false,"pushed_at":"2019-01-07T12:46:02.000Z","size":267,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-29T12:35:07.594Z","etag":null,"topics":["game-2d","game-development","game-engine","haxepunk","love","love-game-engine","love2d","love2d-framework","lua","moonscript"],"latest_commit_sha":null,"homepage":null,"language":"MoonScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/losinggeneration.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-01-31T06:32:53.000Z","updated_at":"2023-07-11T13:18:58.000Z","dependencies_parsed_at":"2022-09-24T21:21:19.322Z","dependency_job_id":null,"html_url":"https://github.com/losinggeneration/LunoPunk","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/losinggeneration%2FLunoPunk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/losinggeneration%2FLunoPunk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/losinggeneration%2FLunoPunk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/losinggeneration%2FLunoPunk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/losinggeneration","download_url":"https://codeload.github.com/losinggeneration/LunoPunk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249787068,"owners_count":21325569,"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-2d","game-development","game-engine","haxepunk","love","love-game-engine","love2d","love2d-framework","lua","moonscript"],"created_at":"2024-09-24T19:45:58.988Z","updated_at":"2025-04-19T19:55:56.203Z","avatar_url":"https://github.com/losinggeneration.png","language":"MoonScript","readme":"# LunoPunk\n***\n### WARNING!!!\nThe API is subject to change without warning. This is very much still a WIP.\n\n***\nA [Moonscript](http://moonscript.org)/[LÖVE](http://www.love2d.org) port of the [HaxePunk](http://haxepunk.com), which is a Haxe port of the AS3 library [FlashPunk](http://useflashpunk.net). The implementation is in Moonscript, but should also be usable from Lua as well.\n*Luno in Esperanto means Moon.*\n\n[![Build Status](https://travis-ci.org/losinggeneration/LunoPunk.png?branch=master)](https://travis-ci.org/losinggeneration/LunoPunk)\n[![Coverage Status](https://coveralls.io/repos/losinggeneration/LunoPunk/badge.png?branch=master)](https://coveralls.io/r/losinggeneration/LunoPunk?branch=master)\n\n## Release build\nNone yet\n\n## Development build\nThe development build of LunoPunk can be pulled from the Git repository. The master branch is where development happens, so it may be unstable at times. There is also no API guarantee until a release build is made. At which point the code base is branched.\n\n```bash\ngit clone github.com/losinggeneration/LunoPunk\n```\nOnce the repository is cloned, the LunoPunk/LunoPunk directory can be copied into a project directory.\n\n## Example\n*The following example is more-or-less in the examples/rapid directory*\n***\n*main.moon*\n```moonscript\nimport LP from require \"LunoPunk.LP\"\nimport Engine from require \"LunoPunk.Engine\"\nimport GameScene from require \"scenes.GameScene\"\n\nLP.scene = GameScene!\n\nEngine!\n```\n\n*scenes/GameScene.moon*\n```moonscript\nimport Scene from require \"LunoPunk.Scene\"\nimport Image from require \"LunoPunk.graphics.Image\"\n\nclass GameScene extends Scene\n\tbegin: =\u003e\n\t\t@addGraphic Image \"graphics/block.png\"\n\n{ :GameScene }\n```\n\nCompiling to Lua\n```bash\nexport PROJECT_NAME=some_project\nexport LUAROCKS_PATH=$HOME/.luarocks/share/lua/5.1/\nmoonc -t $PROJECT_NAME LunoPunk src_dir main.moon\ncp -r $LUAROCKS_PATH/moon* $PROJECT_NAME/\ncd $PROJECT_NAME\nzip -9r ../$PROJECT_NAME.love .\n```\n\n## Have questions or looking to get involved?\n\nGreat! The project needs all the help it can. However, many of the API decisions will still be up to my own judgment early on, but I'm open to suggestions.\n\n* Contact Harley directly\n\t* Email: losinggeneration@gmail.com\n\t* Twitter: [@losnggeneration](http://twitter.com/losnggeneration)\n\n## Credits/Thanks\n\n* Matt Tuttle for creating HaxePunk.\n* Chevy Ray Johnston for creating FlashPunk.\n* leaf corcoran for creating Moonscript.\n* The Prosody IM team from which some code was used for the Coveralls support.\n\n## MIT License\n\nCopyright (C) 2013-2014 Harley Laue\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flosinggeneration%2Flunopunk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flosinggeneration%2Flunopunk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flosinggeneration%2Flunopunk/lists"}