{"id":26771830,"url":"https://github.com/lockie/cookiecutter-lisp-game","last_synced_at":"2026-03-02T04:01:21.889Z","repository":{"id":172205509,"uuid":"644532552","full_name":"lockie/cookiecutter-lisp-game","owner":"lockie","description":"A cookiecutter template for Common Lisp videogame projects","archived":false,"fork":false,"pushed_at":"2025-06-20T13:54:08.000Z","size":141,"stargazers_count":32,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-28T18:46:16.076Z","etag":null,"topics":["common-lisp","cookiecutter","cookiecutter-template","game-development","lisp"],"latest_commit_sha":null,"homepage":"","language":"Common Lisp","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/lockie.png","metadata":{"files":{"readme":"README.org","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,"zenodo":null}},"created_at":"2023-05-23T18:04:55.000Z","updated_at":"2025-06-20T13:54:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"9298b3ae-6d5f-4dba-9a44-8fc3211d32c0","html_url":"https://github.com/lockie/cookiecutter-lisp-game","commit_stats":null,"previous_names":["lockie/cookiecutter-lisp-game"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lockie/cookiecutter-lisp-game","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lockie%2Fcookiecutter-lisp-game","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lockie%2Fcookiecutter-lisp-game/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lockie%2Fcookiecutter-lisp-game/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lockie%2Fcookiecutter-lisp-game/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lockie","download_url":"https://codeload.github.com/lockie/cookiecutter-lisp-game/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lockie%2Fcookiecutter-lisp-game/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29992286,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T01:47:34.672Z","status":"online","status_checked_at":"2026-03-02T02:00:07.342Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["common-lisp","cookiecutter","cookiecutter-template","game-development","lisp"],"created_at":"2025-03-29T00:35:10.176Z","updated_at":"2026-03-02T04:01:21.860Z","avatar_url":"https://github.com/lockie.png","language":"Common Lisp","funding_links":[],"categories":["Online editors ##"],"sub_categories":["Third-party APIs"],"readme":"* cookiecutter-lisp-game\nAn opinionated [[https://github.com/cookiecutter/cookiecutter][cookiecutter]] template for Common Lisp videogame\nprojects. Contains an empty window with FPS counter, a basic event loop,\n[[https://github.com/cbaggers/livesupport][livesupport]] for interactive development and deployment matters covered\n(automated Linux, MacOS and Windows builds with the help of\n[[https://gitlab.com/lockie/docker-lisp-gamedev][docker-lisp-gamedev]]).\n\nYou can choose the backend middleware library for your project from the\nfollowing:\n+ [[https://liballeg.github.io][liballegro]] — the recommended option. Rock-solid stability, a wide range of\n  functionality and decent Common Lisp [[https://github.com/resttime/cl-liballegro][bindings]]. The only choice that supports\n  the creation of in-game UIs, via [[https://gitlab.com/lockie/cl-liballegro-nuklear][cl-liballegro-nuklear]].\n+ [[https://raylib.com][raylib]] — pretty much dark horse. Lacks proper error handling and doesn't have\n  a huge lot of functionality, but the code size is the smallest. The library\n  itself requires [[https://raylib.com/#supported-platforms][manual installation]], and Common Lisp [[https://github.com/longlene/cl-raylib][bindings]] are only\n  present on [[https://ultralisp.org][Ultralisp]]. NOTE: untested under MacOS.\n+ [[https://wiki.libsdl.org/SDL2][SDL2]] — most popular framework, boasting abundant documentation and\n  tutorials. However, Common Lisp [[https://github.com/lispgames/cl-sdl2][bindings]] are in sorry state, so expect bugs\n  and crashes.\n\n** Requirements\nInstall cookiecutter:\n#+begin_src sh\npip install cookiecutter\n#+end_src\n\nYou'll obviously need some Lisp implementation ([[https://sbcl.org][SBCL]] is preferred) and\n[[https://quicklisp.org][Quicklisp]] package manager:\n#+begin_src sh\ncurl -O https://beta.quicklisp.org/quicklisp.lisp\nsbcl --non-interactive --load quicklisp.lisp \\\n  --eval '(quicklisp-quickstart:install)' \\\n  --eval '(ql-util:without-prompting (ql:add-to-init-file))'\n#+end_src\n\nTo use the *raylib* middleware, you'll additionally need to have [[https://ultralisp.org][Ultralisp]]\ninstalled:\n#+begin_src sh\nsbcl --non-interactive --eval '(ql-dist:install-dist \"http://dist.ultralisp.org/\" :prompt nil)'\n#+end_src\n\n** Usage\n#+begin_src sh\ncookiecutter gh:lockie/cookiecutter-lisp-game\n#+end_src\n\nDont forget to symlink your project's directory to Quicklisp's [[http://blog.quicklisp.org/2018/01/the-quicklisp-local-projects-mechanism.html][local projects]]\nfor local development:\n#+begin_src sh\ncd your-game\nln -s `pwd` $HOME/quicklisp/local-projects/\n#+end_src\n\nAfter that, you can just ~(ql:quickload :your-game)~ in your preferred Lisp IDE,\nrun ~(main)~ and start hacking!\n\n*IMPORTANT*: Push your repo to Github, then go to Settings → Actions → General →\nWorkflow permissions and tick the \"Read and write permission\" option, otherwise\nyou'll get \"Error 403: Resource not accessible by integration\" on build.\n\nTo change branding icon, replace =package/icon.png= with any 256x256 PNG file.\n\nTo automatically build packages for supported OSes, just add a tag to a commit\nand push it to your repo on GitHub; in about 10 minutes they'll appear in\nReleases section of your repo.\n\n** Projects\nThe list of projects built with this template:\n- [[https://awkravchuk.itch.io/lispy-rogue][Lispy Rogue]], an Autumn Lisp Game Jam 2024 entry\n- [[https://awkravchuk.itch.io/cycle-of-evil][Cycle of Evil]], a Spring Lisp Game Jam 2024 entry\n- [[https://awkravchuk.itch.io/mana-break][Mana Break]], an Autumn Lisp Game Jam 2023 entry\n- [[https://awkravchuk.itch.io/thoughtbound][Thoughtbound]], a Spring Lisp Game Jam 2023 entry\n- feel free to [[https://github.com/lockie/cookiecutter-lisp-game/issues/new/choose][add your projects here]]!\n\n** License\nThis project is licensed under the terms of the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flockie%2Fcookiecutter-lisp-game","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flockie%2Fcookiecutter-lisp-game","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flockie%2Fcookiecutter-lisp-game/lists"}