| { | |
| "name": "frontend", | |
| "private": true, | |
| "version": "0.0.0", | |
| "type": "module", | |
| "scripts": { | |
| "dev": "vite", | |
| "build": "tsc && vite build", | |
| "preview": "vite preview", | |
| "lint": "eslint ./src --ext .jsx,.js,.ts,.tsx", | |
| "lint-fix": "eslint ./src --ext .jsx,.js,.ts,.tsx --fix", | |
| "format": "prettier ./src --write", | |
| "prepare": "cd .. && husky install frontend/.husky" | |
| }, | |
| "lint-staged": { | |
| "**/*.{js,jsx,ts,tsx}": [ | |
| "npm run lint-fix", | |
| "npm run format" | |
| ] | |
| }, | |
| "dependencies": { | |
| "@reduxjs/toolkit": "^1.9.2", | |
| "@vercel/analytics": "^0.1.10", | |
| "react": "^18.2.0", | |
| "react-copy-to-clipboard": "^5.1.0", | |
| "react-dom": "^18.2.0", | |
| "react-dropzone": "^14.2.3", | |
| "react-markdown": "^8.0.7", | |
| "react-redux": "^8.0.5", | |
| "react-router-dom": "^6.8.1", | |
| "react-syntax-highlighter": "^15.5.0", | |
| "remark-gfm": "^3.0.0" | |
| }, | |
| "devDependencies": { | |
| "@types/react": "^18.0.27", | |
| "@types/react-dom": "^18.0.10", | |
| "@types/react-syntax-highlighter": "^15.5.6", | |
| "@typescript-eslint/eslint-plugin": "^5.51.0", | |
| "@typescript-eslint/parser": "^5.51.0", | |
| "@vitejs/plugin-react": "^4.2.1", | |
| "autoprefixer": "^10.4.13", | |
| "eslint": "^8.33.0", | |
| "eslint-config-prettier": "^8.6.0", | |
| "eslint-config-standard-with-typescript": "^34.0.0", | |
| "eslint-plugin-import": "^2.27.5", | |
| "eslint-plugin-n": "^15.6.1", | |
| "eslint-plugin-prettier": "^4.2.1", | |
| "eslint-plugin-promise": "^6.1.1", | |
| "eslint-plugin-react": "^7.32.2", | |
| "eslint-plugin-unused-imports": "^2.0.0", | |
| "husky": "^8.0.0", | |
| "lint-staged": "^13.1.1", | |
| "postcss": "^8.4.31", | |
| "prettier": "^2.8.4", | |
| "prettier-plugin-tailwindcss": "^0.2.2", | |
| "tailwindcss": "^3.2.4", | |
| "typescript": "^4.9.5", | |
| "vite": "^5.0.12", | |
| "vite-plugin-svgr": "^4.2.0" | |
| } | |
| } | |