Prime Select

Replacement for libraries like lodash.memo, fast-memoize, reselect or other caching packages ?
No, Prime Select is a general purpose caching library, used to introduce caching at granular functional level.
Offers
- Addresses some common problem with functional caching libraries.
- Global cache clearance support. (Do not left unwanted computed cached values in memory)
- Improved metrics about cache functions and memory usage.
- Shallow / deep cache validation handle support.
- Typescript compatible, since prime-select is bootstrapped with typescript
Getting Started
Install
yarn add prime-select
or
npm install prime-select
Usage
import PrimeSelect from "prime-select";
interface IState {
name: string;
}
const memoizedFunction = PrimeSelect.createSelector({
name: "memoizedFunction",
dependency: (props: { state: IState }) => [props.state.name],
compute: ({ state }) => {
return state.name;
},
cacheValidationType: "shallow",
reComputationMetrics: false,
});
const state: IState = { name: "John" };
const fromMainCache = memoizedFunction({ props: { state } });
const fromSubCache = memoizedFunction({
props: { state },
subCacheId: state.name,
});
Using with React
https://codesandbox.io/s/primeselect-2mku74?file=/src/PrimeSelectUsage.tsx
Storybook
https://main--6351f82565c7fab2bce55dad.chromatic.com/?path=/story/prime-select--usage
Contribution Guidelines
Follow this Guidelines for Contributing to prime-select.
Supported by
Lumel Technologies
(Lumel is hiring - Checkout Careers)