# @git-stack/client-state

> GraphQL for sample

Latest version **0.10.3-alpha.6** (published 2020-12-17) · MIT license · 0 weekly downloads

## Install

```sh
npm install @git-stack/client-state
pnpm add @git-stack/client-state
yarn add @git-stack/client-state
bun add @git-stack/client-state
```

## Health

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

Positive: has types; no vulnerabilities; high quality score.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.10.3-alpha.6 |
| Published | 2020-12-17 |
| First published | 2020-01-30 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 513.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | CDMBase LLC |
| Maintainers | git-stack |

## Links

- npm: https://www.npmjs.com/package/@git-stack/client-state
- Repository: https://github.com/cdmbase/git-stack
- Homepage: https://github.com/cdmbase/git-stack#readme
- Issues: https://github.com/cdmbase/git-stack/issues
- npm.io page: https://npm.io/package/@git-stack/client-state

## Dependencies (1)

- [@git-stack/core](https://npm.io/package/@git-stack/core.md) ^0.10.3-alpha.1

## Recent versions

- 0.10.3-alpha.6 (latest) — 2020-12-17
- 0.10.3-alpha.5 — 2020-12-16
- 0.10.3-alpha.4 — 2020-12-15
- 0.10.3-alpha.1 — 2020-12-08
- 0.10.3-alpha.0 — 2020-12-08
- 0.0.1-alpha.27 — 2020-12-03
- 0.0.1-alpha.26 — 2020-12-02
- 0.0.1-alpha.20 — 2020-11-26
- 0.0.1-alpha.10 — 2020-11-02
- 0.0.1-alpha.4 — 2020-10-22
- 0.0.1-alpha.3 — 2020-10-14
- 0.0.1-alpha.2 — 2020-08-31
- 0.0.1-alpha.0 — 2020-05-13
- 0.10.1-alpha.39 — 2020-05-13
- 0.10.1-alpha.38 — 2020-05-13
- … 9 more at https://npm.io/package/@git-stack/client-state/versions

## README

# Redux Package
Redux npm package includes actions, action-types and reducers

  1. [TypeScript and Redux: getting started][article-1]
  2. [TypeScript and Redux: async actions][article-3]
  3. [TypeScript and Redux: unit testing with Jest][article-4]
  4. [Integrating TypeScript and redux-thunk][article-5]


What does it include:
---
    1. exported reducers
    2. exported actions
    3. exported graphql queries
    4. Typescript 2.0.0 => ES6
    5. unit testing with jest

Purpose:
---
This package can be installable in front-end webserver to use the reducers and actions.

The goal is to make a isolated and reusable module that is self-contained. In order to avoid name conflicts, following rules need to be abide.
1. MUST export a function call reducer()
2. MUST export its action creators as functions
3. MUST have action types in the form `@npm-module-or-app/ACTION_TYPE` eg. `@@git-stack/INCREMENT_COUNTER`
4. MUST have reducer in the form `npm-module-or-app/reducer_name` eg. `@git-stack/counter`

What's not included
---
- It does not have any client UI components such as React
- It does not configure Redux Store

Useful commands:
---
    npm run build       - build the library files
    npm run test        - run tests once
    npm run test:watch  - run tests in watchmode (Useful for development)
    
Files explained:
---
     src                         - directory is used for typescript code that is part of the project
        index.ts                 - Index file of the package. Consists of exported reducers and actions
        index.spec.ts            - Tests file for main
        actions                  - Contains Actions to transform the state tree
            index.ts             - References all the exported actions
        reducers                 - Contains reducers, pure function with (state, action) => state signature. 
            index.ts             - References all the exported reducers.
     package.json                - file is used to describe the library and packages that are required added under peer-dependencies section
     tsconfig.json               - configuration file for the library compilation
     webpack.config.js           - configuration file of the compilation automation process for the library
                 

[article-1]: https://rjzaworski.com/2016/08/getting-started-with-redux-and-typescript
[article-2]: https://rjzaworski.com/2016/08/typescript-redux-and-react
[article-3]: https://rjzaworski.com/2016/09/typescript-redux-async-actions
[article-4]: https://rjzaworski.com/2016/12/testing-typescript-with-jest
[article-5]: https://rjzaworski.com/2017/01/typescript-redux-thunk

---
_Source: https://npm.io/package/@git-stack/client-state · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
