{"id":16897399,"url":"https://github.com/pfeodrippe/vybe","last_synced_at":"2026-04-01T20:57:34.649Z","repository":{"id":240415029,"uuid":"800664616","full_name":"pfeodrippe/vybe","owner":"pfeodrippe","description":"A Clojure framework for game dev","archived":false,"fork":false,"pushed_at":"2025-12-07T22:40:56.000Z","size":16135,"stargazers_count":77,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-02-09T11:45:52.809Z","etag":null,"topics":["clojure","flecs","game","jolt","jvm","opensource"],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pfeodrippe.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-05-14T19:00:59.000Z","updated_at":"2026-02-05T06:30:27.000Z","dependencies_parsed_at":"2024-05-18T18:27:49.173Z","dependency_job_id":"7191a674-2c07-4e17-8a4a-40a70c37018b","html_url":"https://github.com/pfeodrippe/vybe","commit_stats":null,"previous_names":["pfeodrippe/vybe"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/pfeodrippe/vybe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pfeodrippe%2Fvybe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pfeodrippe%2Fvybe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pfeodrippe%2Fvybe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pfeodrippe%2Fvybe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pfeodrippe","download_url":"https://codeload.github.com/pfeodrippe/vybe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pfeodrippe%2Fvybe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31013965,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-27T02:58:54.984Z","status":"ssl_error","status_checked_at":"2026-03-27T02:58:46.993Z","response_time":164,"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":["clojure","flecs","game","jolt","jvm","opensource"],"created_at":"2024-10-13T17:36:52.824Z","updated_at":"2026-03-27T03:15:43.434Z","avatar_url":"https://github.com/pfeodrippe.png","language":"Clojure","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"[![Clojars Project](https://img.shields.io/clojars/v/io.github.pfeodrippe/vybe.svg)](https://clojars.org/io.github.pfeodrippe/vybe)\n\n# Vybe\n\nA Clojure framework for game dev (alpha).\n\nCheck \u003chttps://vybegame.dev\u003e for documentation o/\n\n## Getting Started\n\nThis is the same example as we have at \u003chttps://vybegame.dev/getting-started/\u003e.\nYou can also check \u003chttps://github.com/pfeodrippe/vybe-games\u003e for more examples.\n\n``` clojure\n(ns vybe.example.minimal\n  \"Example with minimal setup, it will load a builtin GLTF (.glb) model with\n  which contains a cube.\"\n  (:require\n   [vybe.flecs :as vf]\n   [vybe.game :as vg]\n   [vybe.raylib.c :as vr.c]\n   [vybe.raylib :as vr]\n   [vybe.type :as vt]))\n\n(defn draw\n  [w delta-time]\n  ;; For debugging\n  #_(def w w)\n\n  ;; --8\u003c-- [start:flecs_physics]\n  ;; Progress the systems (using Flecs).\n  (vf/progress w delta-time)\n\n  ;; Update physics (using Jolt).\n  (vg/physics-update! w delta-time)\n  ;; --8\u003c-- [end:flecs_physics]\n\n  ;; --8\u003c-- [start:rendering]\n  ;; Add some lights (from the blender model).\n  (vg/draw-lights w)\n\n  ;; Render stuff into the screen (using Raylib) using a built-in effect.\n  (vg/with-drawing\n    (vg/with-fx w {:drawing true\n                   :shaders (vg/fx-painting w)}\n      (vr.c/clear-background (vr/Color [255 20 100 255]))\n\n      ;; Here we do a query for the active camera (it's setup when loading the model).\n      (vf/with-query w [_ :vg/camera-active\n                        camera vt/Camera]\n        (vg/with-camera camera\n          (vg/draw-scene w)))\n\n      (vr.c/draw-fps 510 570))))\n;; --8\u003c-- [end:rendering]\n\n(defn init\n  []\n  (let [w (vf/make-world)]\n    ;; If you want to enable debugging (debug messages + clerk + flecs explorer),\n    ;; uncomment line below.\n    #_(vg/debug-init! w)\n\n    (vg/start! w 600 600 #'draw\n               (fn [w]\n                 (-\u003e w\n                     ;; Load model (as a resource).\n                     ;; We are going to load a bultin model, but you can use any .glb\n                     ;; resource you have.\n                     (vg/model :my/model (vg/resource \"com/pfeodrippe/vybe/model/minimal.glb\")))))))\n\n#_ (init)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpfeodrippe%2Fvybe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpfeodrippe%2Fvybe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpfeodrippe%2Fvybe/lists"}