stunk
Version:
Stunk is a lightweight, framework-agnostic state management library for JavaScript and TypeScript. It uses chunk-based state units for efficient updates, reactivity, and performance optimization in React, Vue(WIP), Svelte(Coming soon), and Vanilla JS/TS a
119 lines • 3.31 kB
JSON
{
"name": "stunk",
"version": "3.1.0",
"description": "Stunk is a lightweight, framework-agnostic state management library for JavaScript and TypeScript. It uses chunk-based state units for efficient updates, reactivity, and performance optimization in React, Vue(WIP), Svelte(Coming soon), and Vanilla JS/TS applications.",
"type": "module",
"repository": {
"type": "git",
"url": "https://github.com/I-am-abdulazeez/stunk"
},
"homepage": "https://stunk.dev/",
"bugs": {
"url": "https://github.com/I-am-abdulazeez/stunk/issues"
},
"types": "dist/index.d.ts",
"files": [
"dist"
],
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/index.js"
},
"./middleware": {
"types": "./dist/middleware/index.d.ts",
"import": "./dist/middleware/index.js"
},
"./query": {
"types": "./dist/query/index.d.ts",
"import": "./dist/query/index.js"
},
"./react": {
"types": "./dist/use-react/index.d.ts",
"import": "./dist/use-react/index.js"
},
"./package.json": "./package.json"
},
"keywords": [
"state-management",
"atomic-state",
"chunk-based state",
"framework-agnostic",
"reactive state library",
"frontend state management",
"JavaScript state management",
"TypeScript state management",
"React state management",
"Vue state management",
"Svelte state management",
"recoil alternative",
"jotai alternative",
"zustand alternative",
"lightweight state management",
"state container",
"reusable state",
"efficient state updates",
"performance optimization",
"async-state",
"query",
"mutation",
"stunk",
"chunk"
],
"author": "AbdulAzeez",
"contributors": [
{
"name": "AbdulAzeez",
"url": "https://github.com/I-am-abdulazeez"
},
{
"name": "Chiboy",
"url": "https://github.com/chibx"
},
{
"name": "Idris",
"url": "https://github.com/Dreezy305"
}
],
"license": "MIT",
"devDependencies": {
"@testing-library/dom": "^10.4.0",
"@testing-library/react": "^16.2.0",
"@testing-library/vue": "^8.1.0",
"@types/react": "^18.0.0",
"@typescript-eslint/eslint-plugin": "^8.26.1",
"@typescript-eslint/parser": "^8.27.0",
"@vitejs/plugin-react": "^4.3.4",
"@vitejs/plugin-vue": "^5.2.1",
"eslint": "^9.22.0",
"eslint-plugin-react-hooks": "^5.2.0",
"jsdom": "^26.0.0",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"tsup": "^8.5.0",
"typescript": "^5.0.0",
"vitest": "^3.0.8",
"vue": "^3.5.13"
},
"peerDependencies": {
"react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"vue": "^3.5.13"
},
"peerDependenciesMeta": {
"react": {
"optional": true
},
"vue": {
"optional": true
}
},
"scripts": {
"build": "tsup",
"build:watch": "tsup --watch",
"test": "vitest",
"test:react17": "npm install react@^17.0.0 react-dom@^17.0.0 @types/react@^17.0.0 && npm test",
"test:react18": "npm install react@^18.0.0 react-dom@^18.0.0 @types/react@^18.0.0 && npm test",
"test:react19": "npm install react@^19.0.0 react-dom@^19.0.0 @types/react@^19.0.0 && npm test",
"lint": "eslint . --ext .js,.ts,.tsx,.vue"
}
}