mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-23 14:15:13 +00:00
parent
f8c86f2aef
commit
ee7ad7741e
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt"
|
||||
"start": "nuxt",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"coffee-loader": "^0.8.0",
|
||||
"coffeescript": "^2.0.1"
|
||||
"coffeescript": "^2.0.1",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "node server.js",
|
||||
"build": "nuxt build",
|
||||
"start": "NODE_ENV=production node server.js"
|
||||
"start": "NODE_ENV=production node server.js",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -13,6 +13,7 @@
|
||||
"devDependencies": {
|
||||
"jest": "latest",
|
||||
"jest-puppeteer": "latest",
|
||||
"puppeteer": "latest"
|
||||
"puppeteer": "latest",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,8 @@
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate",
|
||||
"test": "jest"
|
||||
"test": "jest",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"nuxt-edge": "latest"
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"jstransformer-markdown-it": "^2.0.0"
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,6 +9,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt"
|
||||
"start": "nuxt",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,8 @@
|
||||
"generate": "nuxt generate",
|
||||
"precommit": "yarn run lint",
|
||||
"storybook": "start-storybook -p 9001 -c .storybook",
|
||||
"storybookoutput": "build-storybook -c .storybook -o .out"
|
||||
"storybookoutput": "build-storybook -c .storybook -o .out",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"chart.js": "^2.7.1",
|
||||
|
@ -8,7 +8,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"node-sass": "^4.7.2",
|
||||
|
@ -7,7 +7,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"styled-vue": "^0.1.3"
|
||||
|
@ -8,7 +8,8 @@
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate",
|
||||
"deploy": "surge -p dist/ -d https://nuxt-tailwindcss-purgecss.surge.sh"
|
||||
"deploy": "surge -p dist/ -d https://nuxt-tailwindcss-purgecss.surge.sh",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"nuxt": "^2.2.0"
|
||||
|
@ -4,7 +4,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"nuxt-edge": "latest"
|
||||
|
@ -13,7 +13,8 @@
|
||||
"build": "nuxt-ts build",
|
||||
"start": "nuxt-ts start",
|
||||
"generate": "nuxt-ts generate",
|
||||
"lint": "tslint --project ."
|
||||
"lint": "tslint --project .",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^10.12.18",
|
||||
|
@ -10,7 +10,8 @@
|
||||
"build": "nuxt-ts build",
|
||||
"start": "nuxt-ts start",
|
||||
"generate": "nuxt-ts generate",
|
||||
"lint": "tslint --project ."
|
||||
"lint": "tslint --project .",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^10.12.18",
|
||||
|
@ -8,6 +8,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -8,7 +8,8 @@
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate",
|
||||
"lint": "eslint --ext .js,.vue --ignore-path .gitignore .",
|
||||
"precommit": "npm run lint"
|
||||
"precommit": "npm run lint",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"nuxt-edge": "latest"
|
||||
|
@ -8,6 +8,7 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,8 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"test": "ava --serial --verbose"
|
||||
"test": "ava --serial --verbose",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"ava": "^0.19.1",
|
||||
|
@ -6,7 +6,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"buefy": "^0.5.4",
|
||||
|
@ -3,7 +3,8 @@
|
||||
"dependencies": {
|
||||
"cookie": "^0.3.1",
|
||||
"js-cookie": "^2.1.4",
|
||||
"nuxt-edge": "latest"
|
||||
"nuxt-edge": "latest",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
|
@ -4,7 +4,8 @@
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"element-ui": "^2",
|
||||
"nuxt-edge": "latest"
|
||||
"nuxt-edge": "latest",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
|
@ -17,7 +17,8 @@
|
||||
"dev": "DEBUG=nuxt:* nodemon --watch src/ --watch config/ src/index.js",
|
||||
"build": "nuxt build",
|
||||
"start": "NODE_ENV=production node src/",
|
||||
"mocha": "mocha test/ --recursive --timeout=30000"
|
||||
"mocha": "mocha test/ --recursive --timeout=30000",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"body-parser": "^1.15.2",
|
||||
|
@ -5,7 +5,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"keywords": [
|
||||
"nuxt",
|
||||
|
@ -6,6 +6,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"nuxt-edge": "latest"
|
||||
|
@ -3,7 +3,8 @@
|
||||
"scripts": {
|
||||
"dev": "nodemon -w server.js -w nuxt.config.js server.js",
|
||||
"build": "nuxt build",
|
||||
"start": "NODE_ENV=production node server.js"
|
||||
"start": "NODE_ENV=production node server.js",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"dependencies": {
|
||||
"express": "^4.14.0",
|
||||
|
@ -4,7 +4,8 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"test": "tape ./test/**/*.js -r ./test/setup.js | tap-spec"
|
||||
"test": "tape ./test/**/*.js -r ./test/setup.js | tap-spec",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"browser-env": "^3.2.1",
|
||||
|
@ -9,6 +9,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,8 @@
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start",
|
||||
"generate": "nuxt generate"
|
||||
"generate": "nuxt generate",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"stylus": "^0.54.5",
|
||||
|
@ -9,6 +9,7 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,8 @@
|
||||
"scripts": {
|
||||
"dev": "nuxt",
|
||||
"build": "nuxt build",
|
||||
"start": "nuxt start"
|
||||
"start": "nuxt start",
|
||||
"post-update": "yarn upgrade --latest"
|
||||
},
|
||||
"devDependencies": {
|
||||
"less": "^2.7.3",
|
||||
|
Loading…
Reference in New Issue
Block a user