Fork me on GitHub

{:npm-deps {react "16.13.1" react-refresh "0.8.1"}} these are deps.cljs of 0.0.14 and they conflict with package.json "react-dom": "^17.0.1", "react-refresh": "^0.9.0", "react": "^17.0.1". Shadow-cljs tells me that when I use react 17 and react-refresh 0.9.0 on my package.json


By the way , are you using pathom ? I saw another library of you about EQL and maps.


@geraldodev there should be no issue despite the warning from shadow-cljs. helix and react 17 are compatible


we are starting to use pathom at work, yes. I am also very fascinated with it and EQL 🙂

Lucy Wang15:03:43

I've been waiting for some motivation to try pathom/eql for a while, so two (noob) questions: 1. Does introducing pathom/eql require any server-side changes? 2. Do they play well with re-frame?


you can implement pathom on the client but we decided to implement it in our API layer for simplicity


since we did that, we use re-frame to send POST requests with an EQL query and then update the app-db with the results. it works well


we went an extra step further and are putting the results into a datascript db in the app-db to do normalization for us. this is OK for short term, but long term I'm interested in replacing it with something like

Lucy Wang00:03:42

Thanks! one more question, what is the major motivation of introducing pathom/eql into your system?


for us it was that we have a system of entities that have relationships to each other. we were creating API routes that exposed them, but then e.g. entityA related to entityB, I would need to fetch it from the A API and then the B API, which was slow. The other thing we would do is create ad-hoc API routes for each use case, that would return parts of entityA and entityB as was required by the UI, but that led to a proliferation of endpoints


pathom will allow us to declaratively select exactly what data we need from our entire system and load it on the front end, from one endpoint.

Lucy Wang06:03:26

That's a great explanation, thx!


my long term goal is to bring a Relay or apollo-graphql like library to helix, using EQL. although fulcro might beat me there lol