{"id":13681844,"url":"https://github.com/thheller/shadow-grove","last_synced_at":"2025-05-15T20:03:15.601Z","repository":{"id":44340058,"uuid":"512128225","full_name":"thheller/shadow-grove","owner":"thheller","description":"A ClojureScript system to build browser based frontends","archived":false,"fork":false,"pushed_at":"2025-04-18T17:11:34.000Z","size":1739,"stargazers_count":270,"open_issues_count":4,"forks_count":7,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-04-19T06:00:59.359Z","etag":null,"topics":["browser","clojurescript","dom"],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thheller.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,"zenodo":null}},"created_at":"2022-07-09T07:58:58.000Z","updated_at":"2025-04-18T17:11:38.000Z","dependencies_parsed_at":"2023-11-25T09:43:59.234Z","dependency_job_id":"3cea4511-2273-4a29-a7ca-72fd5d8d36cc","html_url":"https://github.com/thheller/shadow-grove","commit_stats":{"total_commits":463,"total_committers":6,"mean_commits":77.16666666666667,"dds":"0.023758099352051865","last_synced_commit":"bc580434fb208f5de33af6e71fb1cfeb8d48f9b5"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thheller%2Fshadow-grove","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thheller%2Fshadow-grove/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thheller%2Fshadow-grove/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thheller%2Fshadow-grove/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thheller","download_url":"https://codeload.github.com/thheller/shadow-grove/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254414493,"owners_count":22067271,"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":["browser","clojurescript","dom"],"created_at":"2024-08-02T13:01:36.775Z","updated_at":"2025-05-15T20:03:13.326Z","avatar_url":"https://github.com/thheller.png","language":"Clojure","funding_links":[],"categories":["Clojure"],"sub_categories":[],"readme":"# shadow-grove\n\n[![Clojars Project](https://img.shields.io/clojars/v/com.thheller/shadow-grove.svg)](https://clojars.org/com.thheller/shadow-grove)\n\n`shadow-grove` is a combination of pieces required to build performant DOM-driven user interfaces, scaling from small to very large. The goal is to have something written in ClojureScript with no extra dependencies and excellent performance out of the box.\n\nTry it live in your browser via the [shadow-grove Playground](https://code.thheller.com/shadow-grove-playground/0.4.0/).\n\n### Current Status\n\n`shadow.grove` is far from finished but usable. Performance is [excellent](https://github.com/thheller/js-framework-shadow-grove). I have been using this for a few years now. Documentation is still in a terrible state though.\n\nThe [shadow-cljs UI](https://github.com/thheller/shadow-cljs/tree/master/src/main/shadow/cljs/ui) is sort of a reference application for all of this. You can experience it live at http://localhost:9630 if you have shadow-cljs running locally.\n\n## Examples\n\n- [shadow-cljs UI](https://github.com/thheller/shadow-cljs/tree/master/src/main/shadow/cljs/ui)\n- [shadow-grove devtools](https://github.com/thheller/shadow-grove/blob/master/src/main/shadow/grove/devtools.cljs)\n- [shadow-stack-mvp](https://github.com/thheller/shadow-stack-mvp) minimum viable project example ([compiled demo](https://code.thheller.com/demos/shadow-stack-mvp/))\n- [grove-todo](https://github.com/thheller/grove-todo) grove implementation of todomvc ([compiled demo](https://code.thheller.com/demos/todomvc/))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthheller%2Fshadow-grove","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthheller%2Fshadow-grove","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthheller%2Fshadow-grove/lists"}