初始化项目配置

- 添加 package.json 和依赖配置
- 配置 TypeScript 编译选项
- 添加 .gitignore 忽略规则
- 包含 React 18、Vite 7、Ant Design 5 等核心依赖
This commit is contained in:
Leo 2025-10-19 21:45:37 +08:00
commit e15e489329
4 changed files with 6430 additions and 0 deletions

24
.gitignore vendored Normal file
View File

@ -0,0 +1,24 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

6341
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

39
package.json Normal file
View File

@ -0,0 +1,39 @@
{
"name": "picstack",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc && vite build",
"preview": "vite preview"
},
"devDependencies": {
"@types/file-saver": "2.0.7",
"@types/lodash-es": "4.17.12",
"@types/react": "19.2.2",
"@types/react-dom": "19.2.2",
"eslint-config-prettier": "10.1.8",
"prettier": "3.6.2",
"typescript": "~5.9.3",
"vite": "^7.1.7"
},
"dependencies": {
"@ant-design/charts": "2.6.5",
"@ant-design/icons": "6.1.0",
"antd": "5.27.5",
"axios": "1.12.2",
"browser-image-compression": "2.0.2",
"copy-to-clipboard": "3.3.3",
"dayjs": "1.11.18",
"file-saver": "2.0.5",
"framer-motion": "12.23.24",
"lodash-es": "4.17.21",
"nanoid": "5.1.6",
"react-countup": "6.5.3",
"react-dropzone": "14.3.8",
"react-masonry-css": "1.0.16",
"react-router-dom": "7.9.4",
"zustand": "5.0.8"
}
}

26
tsconfig.json Normal file
View File

@ -0,0 +1,26 @@
{
"compilerOptions": {
"target": "ES2022",
"useDefineForClassFields": true,
"lib": ["ES2022", "DOM", "DOM.Iterable"],
"module": "ESNext",
"skipLibCheck": true,
"types": ["vite/client"],
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "react-jsx",
/* Linting */
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true
},
"include": ["src"]
}