contentacms / contenta_react

Demo application written in React

Home Page:http://react.contentacms.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Consider using superagent instead of axios for better JSON API support

spleshka opened this issue · comments

I've noticed that devs at Lullabot use axios library for API calls to the backend. However, what we've found during the development for our clients, there is a great library which has awesome support for JSON API standard:

The last mentioned library provides really great DX for data processing which comes from D8 JSON API module:

  • Much less nested response structure
  • All attached data is being wrapped in magic fields which make them accessible as it was added straight to data (for example, you don't have to search for image data in the attachment, you can get image url as it was a usual node title)
  • Many more
commented

Interesting, for https://github.com/contentacms/contenta_vue_nuxt we used a combination of waterwheel + jsonapi-parse + axios. Maybe this could have been reduced to Waterwheel + SuperAgent-jsonapify ?

We can use the normal fetch API instead of either Axios or SuperAgent, with a polyfill for node https://www.npmjs.com/package/isomorphic-fetch

@justafish I am trying to develop this repo using the isomorphic-fetch method you recommend. I have today seen that spelshka (Evgeniy) has built a fully-fledged react demo app in a separate repo. But I want to continue development of your demo app. That is: based on create-react-app and isomorphic-fetch. I and my colleague are hoping to develop our React skills along the way. Please advise me on the best way i can contribute to this repo.