Are any examples in the working state?
Hello, @thheller ! I really like what you are doing here, this project is very exciting for me. I would like to get into clojurescript but one of the problems for me is that react is a de facto only option for FE framework, which for me is one step forward, two steps back.
I wanted to play around with this repo but can not run any example, each one throws some error.
I'm interested in the test-app dom right now because it seems the most approachable to me but the error I see is this:
/js/cljs-runtime/cljs.core.js:19793 Uncaught Error: No item 1 in vector of length 1
at Object.cljs$core$vector_index_out_of_bounds [as vector_index_out_of_bounds] (/js/cljs-runtime/cljs.core.js:19793)
at Object.cljs$core$array_for [as array_for] (/js/cljs-runtime/cljs.core.js:19835)
at Object.eval [as cljs$core$IIndexed$_nth$arity$2] (/js/cljs-runtime/cljs.core.js:20197)
at Object.shadow$experiments$grove$components$get_arg [as get_arg] (/js/cljs-runtime/shadow.experiments.grove.components.js:957)
at eval (/js/cljs-runtime/shadow.experiments.grove.test_app.dom.js:421)
at Object.eval [as run_next_BANG_] (/js/cljs-runtime/shadow.experiments.grove.components.js:487)
at Object.eval [as shadow$experiments$grove$protocols$IWork$work_BANG_$arity$1] (/js/cljs-runtime/shadow.experiments.grove.components.js:428)
at Object.eval [as component_init_BANG_] (/js/cljs-runtime/shadow.experiments.grove.components.js:592)
at Object.shadow$experiments$grove$components$component_create [as component_create] (/js/cljs-runtime/shadow.experiments.grove.components.js:697)
at Object.eval [as shadow$experiments$arborist$protocols$IConstruct$as_managed$arity$2] (/js/cljs-runtime/shadow.experiments.grove.components.js:718)
Am I doing something wrong or is it just out of sync with the experiments? (which is totally understandable)
Sorry the examples in this repo are fairly outdated as I don't use them to experiment with anymore at all. The only active code that uses this is the shadow-cljs UI for Inspect but all of it may change without notice. I'm still exploring how to structure all of this.
This is far from stable and you should definitely stick with something more documented/usable. I don't have much time/energy to work on this currently so I cannot say if I'll ever finish this. It is working but lacks important features. It only has the features the shadow-cljs UI currently uses and nothing else. Building a regular webapp with this would be a struggle.
@thheller Thanks for the answer! Looks like the shadow-cljs UI source is exactly what I was looking for, and I'm using this only for learning and my own experiments.
I updated both todomvc examples to the current library state.
:todomvcis really basic working directly on the state via an atom, no fancy stuff.:todomvc-splitbuilt uses more of the "grove" library I'm still building and experimenting with (which the shadow-cljs UI also uses)