mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-25 23:22:02 +00:00
Compare commits
6 Commits
6c3a00acf2
...
b51e41efa0
Author | SHA1 | Date | |
---|---|---|---|
|
b51e41efa0 | ||
|
3894e9d7c1 | ||
|
bc00279ebd | ||
|
f8a3d318a1 | ||
|
110c49f963 | ||
|
b20d46596f |
2
.github/workflows/docs-check-links.yml
vendored
2
.github/workflows/docs-check-links.yml
vendored
@ -29,7 +29,7 @@ jobs:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Lychee link checker
|
||||
uses: lycheeverse/lychee-action@5cd5ba7877bce8b3973756ae3c9474ce1e50be2f # for v1.8.0
|
||||
uses: lycheeverse/lychee-action@4aa18b6ccdac05029fab067313a6a04f941e6494 # for v1.8.0
|
||||
with:
|
||||
# arguments with file types to check
|
||||
args: >-
|
||||
|
@ -21,8 +21,8 @@ Or follow the steps below to set up a new Nuxt project on your computer.
|
||||
<!-- markdownlint-disable-next-line MD001 -->
|
||||
#### Prerequisites
|
||||
|
||||
- **Node.js** - [`v18.0.0`](https://nodejs.org/en) or newer
|
||||
- **Text editor** - We recommend [Visual Studio Code](https://code.visualstudio.com/) with the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (previously known as Volar)
|
||||
- **Node.js** - [`18.x`](https://nodejs.org/en) or newer (but we recommend the [active LTS release](https://github.com/nodejs/release#release-schedule))
|
||||
- **Text editor** - There is no IDE requirement, but we recommend [Visual Studio Code](https://code.visualstudio.com/) with the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (previously known as Volar) or [WebStorm](https://www.jetbrains.com/webstorm/), which, along with [other JetBrains IDEs](https://www.jetbrains.com/ides/), offers great Nuxt support right out-of-the-box.
|
||||
- **Terminal** - In order to run Nuxt commands
|
||||
|
||||
::note
|
||||
|
@ -40,7 +40,7 @@
|
||||
"@nuxt/ui-templates": "workspace:*",
|
||||
"@nuxt/vite-builder": "workspace:*",
|
||||
"@nuxt/webpack-builder": "workspace:*",
|
||||
"@types/node": "22.9.0",
|
||||
"@types/node": "22.9.1",
|
||||
"@unhead/dom": "1.11.11",
|
||||
"@unhead/shared": "1.11.11",
|
||||
"@unhead/vue": "1.11.11",
|
||||
@ -70,7 +70,7 @@
|
||||
"@nuxt/webpack-builder": "workspace:*",
|
||||
"@testing-library/vue": "8.1.0",
|
||||
"@types/eslint__js": "8.42.3",
|
||||
"@types/node": "22.9.0",
|
||||
"@types/node": "22.9.1",
|
||||
"@types/semver": "7.5.8",
|
||||
"@unhead/schema": "1.11.11",
|
||||
"@unhead/vue": "1.11.11",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nuxt/kit",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
@ -48,7 +48,7 @@
|
||||
"untyped": "^1.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@rspack/core": "1.1.1",
|
||||
"@rspack/core": "1.1.2",
|
||||
"@types/hash-sum": "1.0.2",
|
||||
"@types/lodash-es": "4.17.12",
|
||||
"@types/semver": "7.5.8",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "nuxt",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nuxt/rspack-builder",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
@ -31,7 +31,7 @@
|
||||
"dependencies": {
|
||||
"@nuxt/friendly-errors-webpack-plugin": "^2.6.0",
|
||||
"@nuxt/kit": "workspace:*",
|
||||
"@rspack/core": "^1.1.1",
|
||||
"@rspack/core": "^1.1.2",
|
||||
"autoprefixer": "^10.4.20",
|
||||
"css-loader": "^7.1.2",
|
||||
"css-minimizer-webpack-plugin": "^7.0.0",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nuxt/schema",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
|
@ -184,5 +184,91 @@
|
||||
check()
|
||||
}
|
||||
</script>
|
||||
<script>
|
||||
// Create canvas
|
||||
const $canvas = document.createElement('canvas')
|
||||
$canvas.classList.add('fixed', 'inset-0', '-z-10', 'pointer-events-none', 'opacity-0', 'transition-opacity', 'duration-[2s]', 'ease-in', 'blur-[4px]')
|
||||
document.body.appendChild($canvas)
|
||||
$canvas.classList.remove('opacity-0')
|
||||
|
||||
// Animation options
|
||||
const density = 0.00025
|
||||
const wind = { current: 0, maxCurrent: 4, force: 0.1, target: 0.1, min: 0.1, max: 0.4, easing: 0.01 }
|
||||
const gravity = 1.25
|
||||
|
||||
// Auto resize canvas
|
||||
let recreateParticles = false
|
||||
function resize() {
|
||||
$canvas.width = window.innerWidth
|
||||
$canvas.height = window.innerHeight
|
||||
recreateParticles = true
|
||||
}
|
||||
window.addEventListener('resize', resize)
|
||||
resize()
|
||||
|
||||
function mod(a, b) {
|
||||
return ((a % b) + b) % b
|
||||
}
|
||||
|
||||
// Draw animation
|
||||
let particles = []
|
||||
let lastCall = Date.now()
|
||||
const ctx = $canvas.getContext('2d')
|
||||
function draw() {
|
||||
ctx.clearRect(0, 0, $canvas.width, $canvas.height)
|
||||
|
||||
if (!enableAnimation) {
|
||||
// Stop animation when disabled
|
||||
return requestAnimationFrame(draw)
|
||||
}
|
||||
|
||||
// Recreate particles on resize
|
||||
if (recreateParticles) {
|
||||
particles = Array.from({ length: Math.floor($canvas.width * $canvas.height * density) }, () => {
|
||||
return {
|
||||
x: Math.random() * $canvas.width,
|
||||
y: Math.random() * $canvas.height,
|
||||
vx: 1 + Math.random(),
|
||||
vy: 1 + Math.random(),
|
||||
vsin: Math.random() * 10,
|
||||
rangle: Math.random() * 2 * Math.PI,
|
||||
rsin: Math.random() * 10,
|
||||
color: `rgba(255, 255, 255, ${0.1 + Math.random() * 0.15})`,
|
||||
size: 5 * Math.random() * 4 * ($canvas.height / 1000 )
|
||||
}
|
||||
})
|
||||
recreateParticles = false
|
||||
}
|
||||
|
||||
const now = Date.now()
|
||||
const delta = now - lastCall
|
||||
lastCall = now
|
||||
|
||||
// Update wind
|
||||
wind.force += ( wind.target - wind.force ) * wind.easing
|
||||
wind.current += wind.force * (delta * 0.05)
|
||||
wind.current = Math.max(-wind.maxCurrent, Math.min(wind.current, wind.maxCurrent))
|
||||
if ( Math.random() > 0.995 ) {
|
||||
wind.target = ( wind.min + Math.random() * ( wind.max - wind.min ) ) * ( Math.random() > 0.5 ? -1 : 1 )
|
||||
}
|
||||
|
||||
// Update particles
|
||||
const uTime = delta * 0.2
|
||||
particles.forEach(p => {
|
||||
p.x = mod(p.x + uTime + wind.current * p.vx, $canvas.width)
|
||||
p.y = mod(p.y + uTime * p.vy * gravity, $canvas.height)
|
||||
p.x += Math.sin(uTime * p.vsin) * p.rsin * 0.5
|
||||
p.rangle += uTime * 0.01
|
||||
|
||||
ctx.fillStyle = p.color
|
||||
ctx.beginPath()
|
||||
ctx.ellipse(p.x, p.y, p.size, p.size * 0.66, p.rangle, 0, Math.PI * 2)
|
||||
ctx.fill()
|
||||
})
|
||||
requestAnimationFrame(draw)
|
||||
}
|
||||
|
||||
draw()
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nuxt/vite-builder",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nuxt/webpack-builder",
|
||||
"version": "3.14.159",
|
||||
"version": "3.14.1592",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/nuxt/nuxt.git",
|
||||
@ -74,7 +74,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nuxt/schema": "workspace:*",
|
||||
"@rspack/core": "1.1.1",
|
||||
"@rspack/core": "1.1.2",
|
||||
"@types/hash-sum": "1.0.2",
|
||||
"@types/lodash-es": "4.17.12",
|
||||
"@types/pify": "5.0.4",
|
||||
|
374
pnpm-lock.yaml
374
pnpm-lock.yaml
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user