# cerebral-app-cache

> A javascript wrapper for syncing data between an App chains and a PouchDb cache.

Latest version **0.1.0** (published 2017-04-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install cerebral-app-cache
pnpm add cerebral-app-cache
yarn add cerebral-app-cache
bun add cerebral-app-cache
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.0 |
| Published | 2017-04-28 |
| First published | 2017-04-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 7 |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Jake Chung jakerev110@gmail.com |
| Maintainers | jakerev110 |
| Keywords | cache, cerebral, pouchdb, oada |

## Links

- npm: https://www.npmjs.com/package/cerebral-app-cache
- Repository: https://github.com/jakerev110/cerebral-app-cache
- Homepage: https://github.com/jakerev110/cerebral-app-cache#readme
- Issues: https://github.com/jakerev110/cerebral-app-cache/issues
- npm.io page: https://npm.io/package/cerebral-app-cache

## Dependencies (7)

- [uuid](https://npm.io/package/uuid.md) ^2.0.1
- [bluebird](https://npm.io/package/bluebird.md) ^3.5.0
- [cerebral](https://npm.io/package/cerebral.md) 2.0.0-b-alpha.a54303bb
- [superagent](https://npm.io/package/superagent.md) ^3.5.2
- [json-pointer](https://npm.io/package/json-pointer.md) ^0.6.0
- [oada-app-cache](https://npm.io/package/oada-app-cache.md) ^0.1.1
- [superagent-promise](https://npm.io/package/superagent-promise.md) ^1.1.0

## Alternatives

- [memory-cache](https://npm.io/package/memory-cache.md) — 795.0K weekly downloads
- [@httptoolkit/proxy-agent](https://npm.io/package/@httptoolkit/proxy-agent.md) — 11.2K weekly downloads
- [express-cache-controller](https://npm.io/package/express-cache-controller.md) — 5.3K weekly downloads
- [http-cache-middleware](https://npm.io/package/http-cache-middleware.md) — 4.5K weekly downloads
- [cache2](https://npm.io/package/cache2.md) — 1.5K weekly downloads

## Recent versions

- 0.1.0 (latest) — 2017-04-28

## README

# cerebral-app-cache

## Install

```bash
npm install cerebral-app-cache
```


## API

```bash
var cerebralCache = require('cerebral-app-cache');
```


## .setup

```bash
setup: [
  set(props`token`, state`app.token`),
  set(props`domain`, state`app.model.domain`),
  oadaSetup,      //Calls oadaCache.setup
  cerebralSetup,  //Setup the state tree recursively
],

function oadaSetup({props, state}) {
  return oadaCache.setup(props.domain, props.token, tree);
};

function cerebralSetup({props, state}) {
  return recursiveSetup(domain, tree, keysArray, {state});
}
```


## .get

```bash
get: [
  set(props`token`, state`app.token`),
  set(props`domain`, state`app.model.domain`),
  createUrl,
  oadaGet, {
    success: [setAvailableData],
    error: [],
  },
]
```


## .put

```bash
put: [
  set(props`token`, state`app.token`),
  set(props`domain`, state`app.model.domain`),
  createBookmarksUrl,
  getPathFromUrl,
  prepareBookmarksUrl,
  oadaPut, {
    success: [
      set(state`${props`statePath`}.sync_status`, 'synced'),
    ],
    error: [
      set(state`${props`statePath`}.sync_status`, 'failed'),
    ],
  },
]
```


## .post

```bash
post: [
  generateNewId,
  set(props`token`, state`app.token`),
  set(props`domain`, state`app.model.domain`),
  createBookmarksUrl,
  getPathFromUrl,
  oadaPut, {
    success: [
      set(state`${props`statePath`}`, props`content`),
      set(state`${props`statePath`}.sync_status`, 'synced'),
    ],
    error: [],  //keep status 'new'
  },
],
```

---
_Source: https://npm.io/package/cerebral-app-cache · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
