{"id":21298812,"url":"https://github.com/james2doyle/love2d-template","last_synced_at":"2025-03-15T17:44:27.109Z","repository":{"id":263958804,"uuid":"891912241","full_name":"james2doyle/love2d-template","owner":"james2doyle","description":"A LÖVE (Love2d) template that includes what you may need to develop a game with modern niceties","archived":false,"fork":false,"pushed_at":"2024-11-21T07:19:28.000Z","size":39,"stargazers_count":13,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T07:37:15.864Z","etag":null,"topics":["love2d","lua"],"latest_commit_sha":null,"homepage":"","language":"Lua","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/james2doyle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-11-21T07:17:38.000Z","updated_at":"2025-01-17T03:09:04.000Z","dependencies_parsed_at":"2024-11-21T08:33:13.260Z","dependency_job_id":null,"html_url":"https://github.com/james2doyle/love2d-template","commit_stats":null,"previous_names":["james2doyle/love2d-template"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/james2doyle%2Flove2d-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/james2doyle%2Flove2d-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/james2doyle%2Flove2d-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/james2doyle%2Flove2d-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/james2doyle","download_url":"https://codeload.github.com/james2doyle/love2d-template/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243769947,"owners_count":20345215,"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":["love2d","lua"],"created_at":"2024-11-21T14:57:34.143Z","updated_at":"2025-03-15T17:44:27.080Z","avatar_url":"https://github.com/james2doyle.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"Love2D Template\n===============\n\n\u003e A LÖVE (Love2d) template that includes everything you need to develop a game with modern niceties\n\n### Why?\n\nMostly just exploring Love2d and some modules. Also trying to wrap my head around how I should structure a game and all it's parts.\n\n### Install\n\n```sh\ngit clone https://github.com/james2doyle/love2d-template\ncd love2d-template\nlove .\n```\n\n### Running\n\nThe game starts with a splash page, then goes to the main menu. You can click some of the menu items to go to those other menus. Pressing any button in the credits goes back to the main menu.\n\nPressing `\\`` at any time will toggle the debug menu.\n\n### Modules\n\n* [Badr](https://github.com/Nabeel20/Badr) - Simple and easy user interfaces with composable components\n* [Roomy](https://github.com/tesselode/roomy) - Organize your game into \"screens\" (title/start screen, levels, pause screen)\n* [Flux (fork)](https://github.com/Sheepolution/flux) - Fast, lightweight tweening library\n* [Step](https://github.com/Sheepolution/step) - Timer module for interval actions or delayed actions\n* [Lurker (fork)](https://github.com/jeduden/lurker) - Auto-swaps changed files in a running\n* [Lume (fork)](https://github.com/NQMVD/lume) - Helpful functions\n* [Luacolors](https://github.com/icrawler/luacolors) - Collection of functions for common colors and conversions\n\n\u003c!-- TODO Add these --\u003e\n\u003c!-- * [Baton](https://github.com/tesselode/baton) - Input library that supports keyboards, joysticks, and on-the-fly control swapping --\u003e\n\u003c!-- * [Nata](https://github.com/tesselode/nata) - Entity management with containers for objects in a game, like geometry, characters, and collectibles --\u003e\n\u003c!-- * [Moonshine (fork)](https://github.com/flamendless/moonshine) - Chainable post-processing shaders --\u003e\n\u003c!-- * [Fizzx](https://github.com/2dengine/fizzx) - Collision detection and resolution library --\u003e\n\u003c!-- * [Strike](https://github.com/Aweptimum/Strike) - Collision detection between convex shapes --\u003e\n\u003c!-- * [Binser](https://github.com/bakpakin/binser) - Robust serializer for storing complex objects --\u003e\n\u003c!-- * [Profile.lua](https://github.com/2dengine/profile.lua) - Profile your code by gathering function call frequently and execution time --\u003e\n\u003c!-- * [Vudu](https://github.com/deltadaedalus/vudu) - GUI based in-game debugging system --\u003e\n\u003c!-- * [Love-Release](https://github.com/MisterDA/love-release) - Create releases for Windows executables, macOS applications, Debian packages, and more --\u003e\n\n## Snippets\n\n#### A new \"scene\"\n\n```lua\nlocal _sceneName = {}\n\n-- `previous` - the previously active scene, or `false` if there was no previously active scene\n-- `...` - additional arguments passed to `manager.enter` or `manager.push`\nfunction _sceneName:enter(previous, ...)\n  -- set up the level\nend\n\nfunction _sceneName:update(dt)\n  -- update entities\nend\n\nfunction _sceneName:keypressed(key)\n  -- someone pressed a key\nend\n\nfunction _sceneName:mousepressed(x, y, button, istouch, presses)\n  -- someone clicked the mouse\nend\n\n-- `next` - the scene that will be active next\n-- `...` - additional arguments passed to `manager.enter` or `manager.pop`\nfunction _sceneName:leave(next, ...)\n  -- destroy entities and cleanup resources\nend\n\n-- `next` - the scene that was pushed on top of this scene\n-- `...` - additional arguments passed to `manager.push`\nfunction _sceneName:pause(next, ...)\n  -- destroy entities and cleanup resources\nend\n\n-- `previous` - the scene that was popped\n-- `...` - additional arguments passed to `manager.pop`\nfunction _sceneName:resume(previous, ...)\n  -- Called when a scene is popped and this scene becomes active again.\nend\n\nfunction _sceneName:draw()\n  -- draw the level\nend\n\nreturn _sceneName\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjames2doyle%2Flove2d-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjames2doyle%2Flove2d-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjames2doyle%2Flove2d-template/lists"}