{"id":16257122,"url":"https://github.com/johnlindquist/luna","last_synced_at":"2025-03-19T22:30:21.738Z","repository":{"id":136550392,"uuid":"2199419","full_name":"johnlindquist/luna","owner":"johnlindquist","description":"Luna: The Lua EventDisptacher","archived":false,"fork":false,"pushed_at":"2011-08-15T23:04:00.000Z","size":116,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-28T21:06:52.253Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Lua","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/johnlindquist.png","metadata":{"files":{"readme":"README","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":"2011-08-12T22:01:14.000Z","updated_at":"2021-08-08T22:03:00.000Z","dependencies_parsed_at":"2023-03-10T21:25:39.581Z","dependency_job_id":null,"html_url":"https://github.com/johnlindquist/luna","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/johnlindquist%2Fluna","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlindquist%2Fluna/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlindquist%2Fluna/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnlindquist%2Fluna/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johnlindquist","download_url":"https://codeload.github.com/johnlindquist/luna/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244022668,"owners_count":20385135,"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":[],"created_at":"2024-10-10T15:47:19.401Z","updated_at":"2025-03-19T22:30:21.483Z","avatar_url":"https://github.com/johnlindquist.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"Luna features:\n1. Use addEventListener/removeEventListener to any table for easy communication between tables\n2. Create your own eventDispatchers to group together table events or use the global lunaEventDispatcher\n3. Use the global \"luna(myTable)\" syntax sugar for decorating tables\n5. Simply use the same global \"luna(\"MyModule\")\" syntax sugar for creating and decorating modules\n4. Stop all events on an eventDispatcher by using removeAllEventListeners and addAllRemovedEventListeners\n5. Easily customize events: {name = \"myEvent\", data=\"myData\", target=self}\n6. Act on the table that sent the event using event.sender or customize using event.target\n7. Write less by using myTable:addEventListener(\"foo\") which defaults to function myTable:foo(event)\n8. Debug all your events by setting lunaDebug = true\n\n*More Examples Coming Soon*","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnlindquist%2Fluna","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohnlindquist%2Fluna","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnlindquist%2Fluna/lists"}