{"id":17963397,"url":"https://github.com/kristerkari/observable-redux-json-api","last_synced_at":"2025-07-12T03:11:28.530Z","repository":{"id":66125987,"uuid":"105873917","full_name":"kristerkari/observable-redux-json-api","owner":"kristerkari","description":"Observables + Redux + JSON API","archived":false,"fork":false,"pushed_at":"2020-06-02T09:53:21.000Z","size":1609,"stargazers_count":8,"open_issues_count":21,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-19T09:14:16.392Z","etag":null,"topics":["crud","json-api","observable","redux","redux-observable","rxjs"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kristerkari.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-05T09:53:29.000Z","updated_at":"2021-10-01T04:28:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"8daf31c4-9a76-47b9-8079-ca0a661c0349","html_url":"https://github.com/kristerkari/observable-redux-json-api","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristerkari%2Fobservable-redux-json-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristerkari%2Fobservable-redux-json-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristerkari%2Fobservable-redux-json-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kristerkari%2Fobservable-redux-json-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kristerkari","download_url":"https://codeload.github.com/kristerkari/observable-redux-json-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245407609,"owners_count":20610228,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crud","json-api","observable","redux","redux-observable","rxjs"],"created_at":"2024-10-29T11:36:12.456Z","updated_at":"2025-03-25T05:32:16.811Z","avatar_url":"https://github.com/kristerkari.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Observables + Redux + JSON API\n\n\u003ca href=\"http://reactivex.io/rxjs/\"\u003e\u003cimg src=\"images/rxjs-logo.png\" width=\"150\"\u003e\u003c/a\u003e\u003cimg src=\"images/plus.svg\" width=\"100\"\u003e\u003ca href=\"https://redux.js.org/\"\u003e\u003cimg src=\"images/redux-logo.svg\" width=\"160\"\u003e\u003c/a\u003e\u003cimg src=\"images/plus.svg\" width=\"100\"\u003e\u003ca href=\"http://jsonapi.org/\"\u003e\u003cimg src=\"images/jsonapi-logo.png\" width=\"360\"\u003e\u003c/a\u003e\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/kristerkari/observable-redux-json-api.svg)](https://greenkeeper.io/)\n\n[![NPM version](https://img.shields.io/npm/v/observable-redux-json-api.svg)](https://www.npmjs.com/package/observable-redux-json-api)\n[![Build Status](https://travis-ci.org/kristerkari/observable-redux-json-api.svg?branch=master)](https://travis-ci.org/kristerkari/observable-redux-json-api)\n[![Build status](https://ci.appveyor.com/api/projects/status/39y7dxu90yive4vb/branch/master?svg=true)](https://ci.appveyor.com/project/kristerkari/observable-redux-json-api/branch/master)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github)\n\nThis library is intended for use in web applications build on Redux, which consumes data from a [JSON API](http://jsonapi.org/).\n\nUse **observable-redux-json-api** to have one simple way of storing resource objects in Redux state along with it's CRUD API, which provides easy ways to create, read, update and delete resources.\n\n**observable-redux-json-api** is a library based on [redux-json-api](https://github.com/stonecircle/redux-json-api) (big thanks to them).\n\nThe main difference is that instead of [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) it uses [RxJS Observables](http://reactivex.io/rxjs/) for all its [CRUD](https://en.wikipedia.org/wiki/Create,_read,_update_and_delete) methods.\n\nObservables give you better control of the network requests compared to promises. You can for example easily cancel or retry the requests using RxJS.\n\n## Why should you use observable-redux-json-api instead of redux-json-api?\n\n✓ Compatible with [Typescript](https://www.typescriptlang.org/) (includes type definitions).\u003cbr /\u003e\n✓ ECMAScript 5 compatible, no need to add polyfills for browsers that do not support ECMAScript 6.\u003cbr /\u003e\n✓ You can easily cancel or retry network requests using RxJS.\u003cbr /\u003e\n✓ Compatible with [redux-observable](https://redux-observable.js.org/).\u003cbr /\u003e\n\n# Table of contents\n\n1.  [Set-Up \u0026 Configure](docs/set-up-configure.md)\n1.  [API](docs/api.md)\n1.  [Example app](https://github.com/kristerkari/observable-redux-json-api-example)\n1.  [Typescript example app](https://github.com/kristerkari/observable-redux-json-api-typescript-example)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkristerkari%2Fobservable-redux-json-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkristerkari%2Fobservable-redux-json-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkristerkari%2Fobservable-redux-json-api/lists"}