mirror of
https://github.com/jambonz/jambonz-webapp.git
synced 2025-12-19 05:37:43 +00:00
* Implement initial Cypress testing configuration * Add docs on cypress for testing * Cypress cache for GitHub actions
124 lines
3.1 KiB
JSON
124 lines
3.1 KiB
JSON
{
|
|
"name": "jambonz-webapp",
|
|
"description": "A simple provisioning web app for jambonz",
|
|
"version": "v1.0.0",
|
|
"license": "MIT",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=14.18"
|
|
},
|
|
"contributors": [
|
|
{
|
|
"name": "Brandon Lee Kitajchuk",
|
|
"email": "bk@kitajchuk.com",
|
|
"url": "https://www.kitajchuk.com"
|
|
},
|
|
{
|
|
"name": "Lê Hàn Minh Khang",
|
|
"email": "mkhangle20@gmail.com"
|
|
},
|
|
{
|
|
"name": "Dave Horton",
|
|
"email": "daveh@drachtio.org",
|
|
"url": "https://drachtio.org"
|
|
}
|
|
],
|
|
"scripts": {
|
|
"prepare": "husky install",
|
|
"postinstall": "rm -rf public/fonts && cp -R node_modules/jambonz-ui/public/fonts public/fonts",
|
|
"start": "npm run dev",
|
|
"dev": "vite --port 3001",
|
|
"dev:server": "ts-node --esm server/dev.server.ts",
|
|
"prebuild": "rm -rf ./dist",
|
|
"build": "tsc && vite build",
|
|
"preview": "vite preview",
|
|
"lint": "eslint . --ext ts,tsx --max-warnings=0",
|
|
"format": "prettier --check .",
|
|
"test": "cypress run --component --headless",
|
|
"test:open": "cypress open --component",
|
|
"serve": "serve -s dist -l ${HTTP_PORT:-3001}",
|
|
"pm2": "pm2 start npm --name \"jambonz-webapp\" -- run serve",
|
|
"deploy": "npm i && npm run build && npm run pm2"
|
|
},
|
|
"dependencies": {
|
|
"dayjs": "^1.11.5",
|
|
"jambonz-ui": "^0.0.19",
|
|
"react": "^18.0.0",
|
|
"react-blockies": "^1.4.1",
|
|
"react-dom": "^18.0.0",
|
|
"react-feather": "^2.0.10",
|
|
"react-router-dom": "^6.3.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/cors": "^2.8.12",
|
|
"@types/express": "^4.17.13",
|
|
"@types/node": "^18.6.1",
|
|
"@types/react": "^18.0.0",
|
|
"@types/react-blockies": "^1.4.1",
|
|
"@types/react-dom": "^18.0.0",
|
|
"@typescript-eslint/eslint-plugin": "^5.30.6",
|
|
"@typescript-eslint/parser": "^5.30.6",
|
|
"@vitejs/plugin-react": "^1.3.0",
|
|
"cors": "^2.8.5",
|
|
"cypress": "^10.8.0",
|
|
"eslint": "^8.19.0",
|
|
"eslint-config-prettier": "^8.5.0",
|
|
"eslint-plugin-jsx-a11y": "^6.6.0",
|
|
"eslint-plugin-react": "^7.30.1",
|
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
"express": "^4.18.1",
|
|
"husky": "^8.0.1",
|
|
"lint-staged": "^13.0.3",
|
|
"nanoid": "^4.0.0",
|
|
"prettier": "^2.7.1",
|
|
"sass": "^1.53.0",
|
|
"serve": "^14.0.1",
|
|
"ts-node": "^10.9.1",
|
|
"typescript": "^4.6.3",
|
|
"vite": "^3.0.0"
|
|
},
|
|
"lint-staged": {
|
|
"*.{ts,tsx}": "eslint --max-warnings=0",
|
|
"*.{ts,tsx,json,md,html,scss,css,yml}": "prettier --write"
|
|
},
|
|
"eslintConfig": {
|
|
"root": true,
|
|
"extends": [
|
|
"plugin:@typescript-eslint/recommended",
|
|
"plugin:react/recommended",
|
|
"plugin:jsx-a11y/recommended",
|
|
"prettier"
|
|
],
|
|
"plugins": [
|
|
"@typescript-eslint",
|
|
"react-hooks",
|
|
"jsx-a11y",
|
|
"react"
|
|
],
|
|
"rules": {
|
|
"react/jsx-key": [
|
|
"error",
|
|
{
|
|
"checkFragmentShorthand": true
|
|
}
|
|
],
|
|
"react/prop-types": [
|
|
0
|
|
],
|
|
"@typescript-eslint/no-non-null-assertion": [
|
|
0
|
|
]
|
|
},
|
|
"parser": "@typescript-eslint/parser",
|
|
"settings": {
|
|
"react": {
|
|
"version": "detect"
|
|
}
|
|
},
|
|
"ignorePatterns": [
|
|
"dist",
|
|
"node_modules"
|
|
]
|
|
}
|
|
}
|