jam/package.json
2026-04-09 20:29:41 +02:00

103 lines
4.1 KiB
JSON

{
"name": "jam",
"private": true,
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "VITE_JAM_DEV_MODE=true vite",
"dev:secondary": "JAM_BACKEND=jam-standalone JAM_API_PORT=29080 npm run dev",
"build": "tsc -b && vite build",
"lint": "eslint .",
"prettier": "prettier --write \"**/*.{js,jsx,ts,tsx,json,css,md}\"",
"format": "npm run lint -- --fix && npm run prettier",
"preview": "vite preview",
"storybook": "storybook dev -p 6006",
"build-storybook": "storybook build",
"prepare": "husky install",
"test": "vitest run",
"test:unit": "vitest run --project unit",
"test:storybook": "vitest run --project storybook",
"check": "npm run format && npm run test && npm run build",
"regtest:build": "npm run regtest:clear && docker compose --env-file docker/regtest/.env.example --file docker/regtest/docker-compose.yml build --pull",
"regtest:rebuild": "rm -rf docker/regtest/.tmp && npm run regtest:build -- --no-cache",
"regtest:clear": "docker compose --env-file docker/regtest/.env.example --file docker/regtest/docker-compose.yml down --volumes --remove-orphans",
"regtest:up": "./docker/regtest/prepare-setup.sh && docker compose --env-file docker/regtest/.env.generated --file docker/regtest/docker-compose.yml up --detach --wait --wait-timeout 120",
"regtest:logs": "docker compose --env-file docker/regtest/.env.example --file docker/regtest/docker-compose.yml logs --follow",
"regtest:down": "docker compose --env-file docker/regtest/.env.example --file docker/regtest/docker-compose.yml down",
"regtest:logs:jmwalletd": "docker exec -t jm_regtest_joinmarket tail -f /var/log/jam/jmwalletd_stdout.log",
"regtest:logs:schedule": "docker exec -t jm_regtest_joinmarket tail -f /root/.joinmarket/logs/TUMBLE.schedule",
"regtest:logs:directory_node": "docker exec -t jm_regtest_joinmarket_directory_node tail -f /var/log/jam/directory_node_stdout.log -n 200",
"regtest:init": "./docker/regtest/init-setup.sh",
"regtest:mine": "watch -n 11 ./docker/regtest/mine-block.sh"
},
"lint-staged": {
"*.{js,jsx,ts,tsx}": [
"eslint --fix",
"prettier --write"
],
"*.{json,css,md}": "prettier --write"
},
"dependencies": {
"@noble/hashes": "1.8.0",
"@radix-ui/react-accordion": "1.2.12",
"@radix-ui/react-avatar": "1.1.10",
"@radix-ui/react-dialog": "1.1.15",
"@radix-ui/react-label": "2.1.7",
"@radix-ui/react-select": "2.2.6",
"@radix-ui/react-separator": "1.1.7",
"@radix-ui/react-slot": "1.2.3",
"@radix-ui/react-tooltip": "1.2.8",
"@tailwindcss/vite": "4.1.13",
"@tanstack/react-query": "5.89.0",
"@tanstack/react-table": "^8.20.5",
"class-variance-authority": "0.7.1",
"clsx": "2.1.1",
"i18next-browser-languagedetector": "8.2.0",
"lucide-react": "0.544.0",
"next-themes": "0.4.6",
"qrcode": "1.5.4",
"react": "19.1.1",
"react-dom": "19.1.1",
"react-i18next": "15.7.3",
"react-router-dom": "7.9.1",
"sonner": "2.0.7",
"tailwind-merge": "3.3.1",
"tailwindcss": "4.1.13",
"tw-animate-css": "1.3.8",
"zustand": "5.0.8"
},
"devDependencies": {
"@chromatic-com/storybook": "4.0.1",
"@eslint/js": "9.29.0",
"@playwright/test": "1.53.2",
"@storybook/addon-a11y": "9.0.18",
"@storybook/addon-docs": "9.0.18",
"@storybook/addon-vitest": "9.0.18",
"@storybook/react-vite": "9.0.18",
"@trivago/prettier-plugin-sort-imports": "5.2.2",
"@types/node": "22.18.6",
"@types/qrcode": "1.5.5",
"@types/react": "19.1.13",
"@types/react-dom": "19.1.9",
"@vitejs/plugin-react": "4.7.0",
"@vitest/browser": "3.2.4",
"conventional-changelog": "7.1.1",
"eslint": "9.35.0",
"eslint-plugin-react-hooks": "5.2.0",
"eslint-plugin-react-refresh": "0.4.20",
"eslint-plugin-storybook": "9.1.7",
"globals": "16.4.0",
"husky": "8.0.3",
"lint-staged": "16.1.6",
"prettier": "3.6.2",
"prettier-plugin-tailwindcss": "0.6.14",
"storybook": "9.0.18",
"typescript": "~5.9.2",
"typescript-eslint": "8.44.0",
"vite": "6.3.6",
"vitest": "3.2.4"
},
"overrides": {
"storybook": "$storybook"
}
}