Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
114 lines (114 loc) · 3.44 KB
/
Copy pathpackage.json
File metadata and controls
114 lines (114 loc) · 3.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
{
"name": "easypiva",
"private": true,
"version": "1.2.0",
"type": "module",
"packageManager": "npm@11.16.0",
"engines": {
"node": ">=24.0.0"
},
"description": "Simulazioni fiscali italiane open source 2026 per regime forfettario, INPS e confronto regimi",
"author": {
"name": "Michael Gasperini",
"email": "info@mikesoft.it",
"url": "https://mikesoft.it"
},
"homepage": "https://easypiva.vercel.app",
"repository": "github:TheStreamCode/easypiva",
"bugs": {
"url": "https://github.com/TheStreamCode/easypiva/issues"
},
"keywords": [
"partita-iva",
"regime-forfettario",
"tax-calculator",
"inps",
"irpef",
"italy",
"fiscal",
"react",
"vite",
"typescript",
"web-app",
"open-source",
"mikesoft"
],
"license": "MIT",
"scripts": {
"dev": "vite --port=3000 --host=0.0.0.0",
"dev:e2e": "vite --host=127.0.0.1 --port=4173 --strictPort",
"build": "vite build",
"preview": "vite preview",
"clean": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
"typecheck": "tsc --noEmit",
"lint": "eslint .",
"test": "vitest run",
"test:e2e": "playwright test",
"test:watch": "vitest",
"format": "prettier . --write",
"format:check": "prettier . --check",
"audit": "npm audit --audit-level=high",
"fiscal:write": "tsx scripts/fiscal-profile.ts --write",
"fiscal:check": "tsx scripts/fiscal-profile.ts --check && tsx scripts/fiscal-checksum.ts --check",
"fiscal:checksum": "tsx scripts/fiscal-checksum.ts --write",
"fiscal:recalc": "tsx scripts/fiscal-recalc.ts",
"ci": "npm run format:check && npm run typecheck && npm run lint && npm run fiscal:check && npm run test && npm run build && npm run test:e2e"
},
"dependencies": {
"@base-ui/react": "^1.9.0",
"@fontsource-variable/geist": "^5.3.0",
"@fontsource-variable/newsreader": "^5.3.0",
"@hookform/resolvers": "^5.4.0",
"@tailwindcss/vite": "^4.3.3",
"@vitejs/plugin-react": "^5.0.4",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"html2canvas": "^1.4.1",
"jspdf": "^4.2.1",
"lucide-react": "^0.546.0",
"motion": "^13.4.3",
"react": "^19.3.1",
"react-dom": "^19.3.1",
"react-hook-form": "^7.91.0",
"react-router": "^8.5.1",
"recharts": "^3.10.1",
"tailwind-merge": "^3.7.0",
"tw-animate-css": "^1.4.0",
"zod": "^4.6.7",
"zustand": "^5.0.16"
},
"devDependencies": {
"@axe-core/playwright": "^4.14.0",
"@eslint/js": "^10.0.1",
"@playwright/test": "^1.64.1",
"@testing-library/dom": "^10.4.2",
"@testing-library/jest-dom": "^7.0.1",
"@testing-library/react": "^16.3.3",
"@testing-library/user-event": "^14.6.8",
"@types/node": "^26.6.6",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"eslint": "^10.13.0",
"eslint-config-prettier": "^10.1.8",
"eslint-import-resolver-typescript": "^4.4.5",
"eslint-plugin-import-x": "^4.17.1",
"eslint-plugin-react-hooks": "^7.1.1",
"eslint-plugin-react-refresh": "^0.5.7",
"globals": "^17.13.0",
"jsdom": "^30.1.3",
"prettier": "^3.9.10",
"shadcn": "^4.23.0",
"tailwindcss": "^4.3.1",
"tsx": "^4.23.15",
"typescript": "~6.0.3",
"typescript-eslint": "^8.72.1",
"vite": "^6.4.5",
"vitest": "^5.0.5"
},
"allowScripts": {
"esbuild@0.28.1": true,
"esbuild@0.25.12": true,
"unrs-resolver@1.11.1": true,
"core-js": false
}
}