Catalog npm
Back to packageRELEASE DETAILS

0.0.3

npm

76

Lightweight wrapper of React + Router + Redux-saga for SPA development.

Published16 Dec 2017
Direct dependencies25
Transitive dependenciesNot calculated

README

Current package documentation

76

Lightweight (300 lines) wrapper of React + Redux + Router + saga for SPA development.

Ver Build Status Coverage Status npm download

Install

npm i -S 76

Usage

import { Application, Module } from '76';

const app = new Application('test-app');

const module = new Module('user-list', {
  initialState,
  selectors,
  reducers,
  watchers,
});

app.addModule(module);

app.setRouter(router);

app.start('#web-container', () => { console.log('app start success!'); })

How to write initialState, selectors, reducers, watchers of module?

  • initialState

initialState is the initial state of module, used to initial store of redux. It is a pure object.

const initialState = {
  domain: {
    users: [],
  },
  ui: {
    loading: false,
  },
};
  • selectors

selectors is used to select the data of module state.

const selectors = {
  getUserList: state => state.domain.users
};
  • reducers

reducers is a pure function transform old state to new state.

const reducers = {
  addUser: (state, user) => {
    // use immutable-helper
    return update(state, {
      domain: {
        users: {
          $push: [user],
        },
      },
    });
  },
  ...
};
  • watchers

watchers is the redux action with side-effect, see document of redux-saga.

const watchers = [{
  take: 'takeEvery',
  actions: 'addUserAsync',
  generator: function*(selectors, actions, { payload }) {
    // do something with effects.
  },
}];

TODO

  • Project website developed by 76.

License

ISC@hustcc.

Downloads & popularity

1downloads
7-day window · source-reported counts22 Oct 2026
10.50
2026-10-22: 1 · observed 2026-10-22T19:19:14.6926792Z
22 Oct22 Oct

npm · 1 observations shown. Missing days are unknown.

View observed values
Date / source periodValueObserved at
2026-10-2212026-10-22T19:19:14.6926792Z

Declared dependencies 26

Native requirements
25 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
immutability-helper-x
Environment
{
  "local_name": "immutability-helper-x",
  "alias": false,
  "peer_metadata": null
}
^1.0.5runtime
react-redux
Environment
{
  "local_name": "react-redux",
  "alias": false,
  "peer_metadata": null
}
^5.0.6runtime
redux
Environment
{
  "local_name": "redux",
  "alias": false,
  "peer_metadata": null
}
^3.7.2runtime
redux-saga
Environment
{
  "local_name": "redux-saga",
  "alias": false,
  "peer_metadata": null
}
^0.16.0runtime
babel-cli
Environment
{
  "local_name": "babel-cli",
  "alias": false,
  "peer_metadata": null
}
^6.26.0development
babel-eslint
Environment
{
  "local_name": "babel-eslint",
  "alias": false,
  "peer_metadata": null
}
^8.0.1development
babel-jest
Environment
{
  "local_name": "babel-jest",
  "alias": false,
  "peer_metadata": null
}
^21.2.0development
babel-plugin-transform-class-properties
Environment
{
  "local_name": "babel-plugin-transform-class-properties",
  "alias": false,
  "peer_metadata": null
}
^6.24.1development
babel-plugin-transform-export-extensions
Environment
{
  "local_name": "babel-plugin-transform-export-extensions",
  "alias": false,
  "peer_metadata": null
}
^6.22.0development
babel-preset-env
Environment
{
  "local_name": "babel-preset-env",
  "alias": false,
  "peer_metadata": null
}
^1.6.1development
babel-preset-react
Environment
{
  "local_name": "babel-preset-react",
  "alias": false,
  "peer_metadata": null
}
^6.24.1development
coveralls
Environment
{
  "local_name": "coveralls",
  "alias": false,
  "peer_metadata": null
}
^3.0.0development
cross-env
Environment
{
  "local_name": "cross-env",
  "alias": false,
  "peer_metadata": null
}
^5.1.0development
enzyme
Environment
{
  "local_name": "enzyme",
  "alias": false,
  "peer_metadata": null
}
^3.1.0development
eslint
Environment
{
  "local_name": "eslint",
  "alias": false,
  "peer_metadata": null
}
^4.9.0development
eslint-config-airbnb
Environment
{
  "local_name": "eslint-config-airbnb",
  "alias": false,
  "peer_metadata": null
}
^16.1.0development
eslint-config-airbnb-base
Environment
{
  "local_name": "eslint-config-airbnb-base",
  "alias": false,
  "peer_metadata": null
}
^12.1.0development
eslint-plugin-import
Environment
{
  "local_name": "eslint-plugin-import",
  "alias": false,
  "peer_metadata": null
}
^2.8.0development
eslint-plugin-jsx-a11y
Environment
{
  "local_name": "eslint-plugin-jsx-a11y",
  "alias": false,
  "peer_metadata": null
}
^6.0.2development
eslint-plugin-react
Environment
{
  "local_name": "eslint-plugin-react",
  "alias": false,
  "peer_metadata": null
}
^7.4.0development
jest
Environment
{
  "local_name": "jest",
  "alias": false,
  "peer_metadata": null
}
^21.2.1development
jsdom
Environment
{
  "local_name": "jsdom",
  "alias": false,
  "peer_metadata": null
}
^11.3.0development
react
Environment
{
  "local_name": "react",
  "alias": false,
  "peer_metadata": null
}
^16.0.0development
react-dom
Environment
{
  "local_name": "react-dom",
  "alias": false,
  "peer_metadata": null
}
^16.0.0development
rimraf
Environment
{
  "local_name": "rimraf",
  "alias": false,
  "peer_metadata": null
}
^2.6.2development
react
Environment
{
  "local_name": "react",
  "alias": false,
  "peer_metadata": null
}
>=0.13.2 || ^0.14 || ^15.0.0 || >=16.0.0-alpha.1 <17.0.0peer

Distribution files

1 collected
Distribution 1

Source distribution

Source file
Checksums from source
{
  "integrity": "sha512-Tljh0LIvW1rGy/oc+apsp7sjrjTkY0jczro0ZRza8zK8i0PpFp9zDC7sVTImmObDBrvHqRCtFqxShYkaSqZYBw==",
  "shasum": "8d0325af40ef9f688a4400adc9084970692f4a9d",
  "tarball": "https://registry.npmjs.org/76/-/76-0.0.3.tgz",
  "signatures": [
    {
      "keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
      "sig": "MEUCIQCnLzUrT8EtHKBuz8sCC9LZxkhNFO1vRswgxyq+o7p/iQIgJmuiM7IYjAyVf+lyGzswmM7iOp5QeyCdkw6JYaTuKaI="
    }
  ]
}

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 21:04 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:7e73d508e1f532bc19a69c1edaea161cdd0442777e376432dbf719b0adf7d7a2

Other collected versions

0.0.42 Jan0.0.214 Dec0.0.15 Dec1.0.031 MayView all collected versions →