react-diode

0.5.25 • Public • Published

Diode

CircleCI codecov.io

Endpoint agnostic, unidirectional data fetching for React application

Diode is an early project, expect breaking changes every (minor) version update.

Features

  • Unidirectional

    Data requirement flows one direction from child component to parent component so root component will know all data the child need. No more confusion where the data comes from (or what component should fetch what data) as root component data is the only source of truth.

  • Declarative

    Declare your data requirements declaratively, no need to manually call API in componentDidMount and use this.state to store data from server. All your data in component will be available as props.

  • Colocation

    Query next to views that rely on them. See your data requirement in the same place that your view resides.

  • Endpoint agnostic

    Every query will have its own endpoint and configuration on how to call them. You can use any HTTP-based endpoint, including REST and yes, GraphQL.

Install

$ npm install react-diode

Usage example

See /examples directory

Contributing

Publishing new version

react-diode is published semi automatically via GitHub Action. You just need to update the version in package.json via npm version and push to master alongside git tag.

# First pull latest master 
git pull origin master
 
# Then determine the next version 
npm version patch # for bugfix 
npm version minor # for new feature 
npm version major # for breaking change 
 
# Push changes to GitHub  
git push origin master --follow-tags

License

MIT

/react-diode/

    Package Sidebar

    Install

    npm i react-diode

    Weekly Downloads

    40

    Version

    0.5.25

    License

    MIT

    Unpacked Size

    375 kB

    Total Files

    15

    Last publish

    Collaborators

    • pveyes
    • traveloka-engineering
    • district-engineering