{"repo":"Patreon/nion","free":true,"listed":false,"github":"https://github.com/Patreon/nion","clone":"git clone https://github.com/Patreon/nion.git","description":"🌵 Declarative API Data Management Library built on top of redux 🌵","language":"JavaScript","stars":127,"topics":["redux","api","fetch"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"nion nion is a library that makes it easy to fetch, update, and manage API data in a Redux store as well as bind it to React components. Nion strives to make working with data as flexible , consistent , and predictable as possible. 💖 nion is heavily inspired by Apollo and GraphQL. In a Nutshell 🌰 nion is used as a hook which is given a declaration of what data is needed by the component that calls it. We simply pass in a declaration object that tells nion what to fetch, and nion automatically handles fetching the data and returning it along with the corresponding request status. nion can also be used as a decorator function which declares what data will be managed by the decorated component and passes in props for managing that data. This is a deprecated usage; we don't recommend writing new code that uses the decorator form. See also: - Examples, a list of common scenarios when using nion - How nion works, a deep dive Up and Running 🏃🏾‍♀️ Installation nion requires redux-thunk in order to handle its async actions, so you should install that along with the nion package. Since nion can be used as a decorator function, you might want to make sure you've got babel configured to handle decorator transpilation: Configuration Finally, nion has to be wired up to the redux store and optionally configured. Here's a very simple setup: Read more about configuring nion in the docs. Read More 📚 - Declarations - Configuring Nion - API Modules - Extensions - Glossary - How it Works Lic","default_branch":null,"files":null,"tree":[],"storefront":"/r/Patreon","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Patreon/nion/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}