Author SHA1 Message Date
Anthony Fu 662b06fab8 wip: 2025-10-27 10:35:23 +09:00
Anthony Fu 065fc323f6 wip: 2025-10-07 15:07:03 +09:00
12 changed files with 6660 additions and 6367 deletions

No files matched your search

+6 -6
View File
@@ -13,9 +13,9 @@ jobs:
lint: lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v7 - uses: actions/checkout@v4
- uses: pnpm/action-setup@v6 - uses: pnpm/action-setup@v4
- uses: actions/setup-node@v7 - uses: actions/setup-node@v4
with: with:
node-version: lts/* node-version: lts/*
cache: pnpm cache: pnpm
@@ -29,9 +29,9 @@ jobs:
typecheck: typecheck:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v7 - uses: actions/checkout@v4
- uses: pnpm/action-setup@v6 - uses: pnpm/action-setup@v4
- uses: actions/setup-node@v7 - uses: actions/setup-node@v4
with: with:
node-version: lts/* node-version: lts/*
cache: pnpm cache: pnpm
+1
View File
@@ -7,3 +7,4 @@ dist
.env .env
.idea/ .idea/
public/assets/fonts public/assets/fonts
.rolldown
+4
View File
@@ -0,0 +1,4 @@
shamefully-hoist=true
strict-peer-dependencies=false
shell-emulator=true
auto-install-peers=false
+2 -2
View File
@@ -1,5 +1,5 @@
<p align="center"> <p align="center">
<img src="https://user-images.githubusercontent.com/11247099/140462375-7b7ac4db-35b7-453c-8a05-13d8d20282c4.png" alt="Vitesse" width="600"/> <img src="https://user-images.githubusercontent.com/11247099/140462375-7b7ac4db-35b7-453c-8a05-13d8d20282c4.png" width="600"/>
</p> </p>
<h2 align="center"> <h2 align="center">
@@ -10,7 +10,7 @@
<br> <br>
<a href="https://vitesse-nuxt3.netlify.app/">🖥 Online Preview</a> <a href="https://vitesse-nuxt3.netlify.app/">🖥 Online Preview</a>
<br><br> <br><br>
<a href="https://stackblitz.com/github/antfu/vitesse-nuxt"><img src="https://developer.stackblitz.com/img/open_in_stackblitz.svg" alt="Open in StackBlitz" /></a> <a href="https://stackblitz.com/github/antfu/vitesse-nuxt"><img src="https://developer.stackblitz.com/img/open_in_stackblitz.svg" alt=""></a>
</p> </p>
## Features ## Features
+4 -1
View File
@@ -1,13 +1,16 @@
<script setup lang="ts"> <script setup lang="ts">
import { appName } from '~/constants' import { appName } from '~/constants'
if (import.meta.client) {
import('@vitejs/devtools/client/inject')
}
useHead({ useHead({
title: appName, title: appName,
}) })
</script> </script>
<template> <template>
<VitePwaManifest />
<NuxtLayout> <NuxtLayout>
<NuxtPage /> <NuxtPage />
</NuxtLayout> </NuxtLayout>
+3 -21
View File
@@ -2,31 +2,13 @@
definePageMeta({ definePageMeta({
layout: 'home', layout: 'home',
}) })
const online = useOnline()
</script> </script>
<template> <template>
<div> <div>
<Logos mb-6 /> <h1 text-xl>
<ClientOnly> Demo App
<Suspense> </h1>
<PageView v-if="online" />
<div v-else text-gray:80>
You're offline
</div>
<template #fallback>
<div op50 italic>
<span animate-pulse>Loading...</span>
</div>
</template>
</Suspense>
<template #fallback>
<div op50>
<span animate-pulse>...</span>
</div>
</template>
</ClientOnly>
<InputEntry /> <InputEntry />
</div> </div>
</template> </template>
+39
View File
@@ -0,0 +1,39 @@
import { addVitePlugin, defineNuxtModule } from '@nuxt/kit'
import { DevTools } from '@vitejs/devtools'
export default defineNuxtModule({
meta: {
name: 'vite',
},
setup() {
addVitePlugin(DevTools())
addVitePlugin({
name: 'nuxt:devtools',
devtools: {
setup(ctx) {
ctx.docks.register({
id: 'vitest',
type: 'iframe',
icon: 'https://vitest.dev/logo.svg',
title: 'Vitest',
url: 'http://localhost:51204/__vitest__/#/',
})
ctx.docks.register({
id: 'nuxt',
type: 'iframe',
icon: 'https://nuxt.com/assets/design-kit/icon-green.svg',
title: 'Nuxt',
url: '/__nuxt_devtools__/client/',
})
ctx.docks.register({
id: 'unocss',
type: 'iframe',
icon: 'https://unocss.dev/logo.svg',
title: 'Vitest',
url: '/__unocss',
})
},
},
})
},
})
+7 -8
View File
@@ -1,4 +1,3 @@
import { pwa } from './app/config/pwa'
import { appDescription } from './app/constants/index' import { appDescription } from './app/constants/index'
export default defineNuxtConfig({ export default defineNuxtConfig({
@@ -7,7 +6,6 @@ export default defineNuxtConfig({
'@unocss/nuxt', '@unocss/nuxt',
'@pinia/nuxt', '@pinia/nuxt',
'@nuxtjs/color-mode', '@nuxtjs/color-mode',
'@vite-pwa/nuxt',
'@nuxt/eslint', '@nuxt/eslint',
], ],
@@ -57,10 +55,13 @@ export default defineNuxtConfig({
target: 'esnext', target: 'esnext',
}, },
}, },
prerender: { },
crawlLinks: false,
routes: ['/'], vite: {
ignore: ['/hi'], build: {
rollupOptions: {
debug: {},
},
}, },
}, },
@@ -72,6 +73,4 @@ export default defineNuxtConfig({
}, },
}, },
}, },
pwa,
}) })
+14 -2
View File
@@ -1,7 +1,7 @@
{ {
"type": "module", "type": "module",
"private": true, "private": true,
"packageManager": "pnpm@11.22.0", "packageManager": "pnpm@10.17.1",
"scripts": { "scripts": {
"build": "nuxt build", "build": "nuxt build",
"dev:pwa": "VITE_PLUGIN_PWA=true nuxt dev", "dev:pwa": "VITE_PLUGIN_PWA=true nuxt dev",
@@ -12,6 +12,7 @@
"start": "node .output/server/index.mjs", "start": "node .output/server/index.mjs",
"start:generate": "npx serve .output/public", "start:generate": "npx serve .output/public",
"lint": "eslint .", "lint": "eslint .",
"test": "vitest",
"typecheck": "nuxt typecheck" "typecheck": "nuxt typecheck"
}, },
"devDependencies": { "devDependencies": {
@@ -20,12 +21,15 @@
"@iconify-json/twemoji": "catalog:icons", "@iconify-json/twemoji": "catalog:icons",
"@nuxt/devtools": "catalog:build", "@nuxt/devtools": "catalog:build",
"@nuxt/eslint": "catalog:build", "@nuxt/eslint": "catalog:build",
"@nuxt/kit": "catalog:build",
"@nuxtjs/color-mode": "catalog:build", "@nuxtjs/color-mode": "catalog:build",
"@pinia/nuxt": "catalog:build", "@pinia/nuxt": "catalog:build",
"@types/node": "catalog:dev", "@pnpm/logger": "catalog:",
"@unocss/eslint-config": "catalog:build", "@unocss/eslint-config": "catalog:build",
"@unocss/nuxt": "catalog:build", "@unocss/nuxt": "catalog:build",
"@vite-pwa/nuxt": "catalog:build", "@vite-pwa/nuxt": "catalog:build",
"@vitejs/devtools": "catalog:",
"@vitest/ui": "catalog:",
"@vueuse/core": "catalog:frontend", "@vueuse/core": "catalog:frontend",
"@vueuse/nuxt": "catalog:build", "@vueuse/nuxt": "catalog:build",
"eslint": "catalog:dev", "eslint": "catalog:dev",
@@ -34,7 +38,15 @@
"pinia": "catalog:frontend", "pinia": "catalog:frontend",
"typescript": "catalog:dev", "typescript": "catalog:dev",
"unocss": "catalog:build", "unocss": "catalog:build",
"vitest": "catalog:",
"vue": "catalog:frontend", "vue": "catalog:frontend",
"vue-tsc": "catalog:dev" "vue-tsc": "catalog:dev"
},
"resolutions": {
"@nuxt/devtools": "catalog:build",
"@nuxt/kit": "catalog:build",
"nuxt": "catalog:build",
"unplugin": "catalog:build",
"vite": "catalog:build"
} }
} }
+6545 -6270
View File
File diff suppressed because it is too large. Load diff
+34 -50
View File
@@ -1,57 +1,41 @@
minimumReleaseAge: 0
shamefullyHoist: true
shellEmulator: true
strictPeerDependencies: false
autoInstallPeers: false
trustPolicy: no-downgrade
packages: [] packages: []
overrides:
'@nuxt/devtools': 'catalog:build' catalog:
'@nuxt/kit': 'catalog:build' '@pnpm/logger': ^1001.0.0
chokidar: 'catalog:build' '@vitejs/devtools': 0.0.0-alpha.6
nuxt: 'catalog:build' '@vitest/ui': ^3.2.4
rollup: 4.62.5 vitest: ^3.2.4
semver: 'catalog:build'
unplugin: 'catalog:build'
vite: 'catalog:build'
workbox-build: 7.4.0
catalogs: catalogs:
build: build:
'@nuxt/devtools': ^3.4.1 '@nuxt/devtools': ^2.6.5
'@nuxt/eslint': ^1.17.0 '@nuxt/eslint': ^1.9.0
'@nuxt/kit': ^4.5.2 '@nuxt/kit': ^4.1.2
'@nuxtjs/color-mode': ^4.0.1 '@nuxtjs/color-mode': ^3.5.2
'@pinia/nuxt': ^1.0.2 '@pinia/nuxt': ^0.11.2
'@unocss/eslint-config': ^66.8.1 '@unocss/eslint-config': ^66.5.2
'@unocss/nuxt': ^66.8.1 '@unocss/nuxt': ^66.5.2
'@vite-pwa/nuxt': ^1.1.1 '@vite-pwa/nuxt': ^1.0.4
'@vueuse/nuxt': ^14.4.0 '@vueuse/nuxt': ^13.9.0
chokidar: ^5.0.0 nuxt: ^4.1.2
nuxt: ^4.5.2 unocss: ^66.5.2
semver: ^7.8.5 unplugin: ^2.3.10
unocss: ^66.8.1 vite: npm:rolldown-vite@^7.1.14
unplugin: ^3.3.0
vite: ^8.2.2
dev: dev:
'@antfu/eslint-config': ^9.3.0 '@antfu/eslint-config': ^5.4.1
'@types/node': ^26.2.0 eslint: ^9.36.0
eslint: ^10.9.0 eslint-plugin-format: ^1.0.2
eslint-plugin-format: ^2.0.1 typescript: ^5.9.3
typescript: ^6.0.3 vue-tsc: ^3.1.0
vue-tsc: ^3.3.11
frontend: frontend:
'@vueuse/core': ^14.4.0 '@vueuse/core': ^13.9.0
pinia: ^4.0.3 pinia: ^3.0.3
vue: ^3.5.41 vue: ^3.5.22
icons: icons:
'@iconify-json/carbon': ^1.2.25 '@iconify-json/carbon': ^1.2.13
'@iconify-json/twemoji': ^1.2.5 '@iconify-json/twemoji': ^1.2.4
update: onlyBuiltDependencies:
ignoreDeps: - '@parcel/watcher'
- typescript@7 - esbuild
- unrs-resolver
allowBuilds:
esbuild: true
unrs-resolver: true
+1 -7
View File
@@ -1,9 +1,3 @@
{ {
"references": [ "extends": "./.nuxt/tsconfig.json"
{ "path": "./.nuxt/tsconfig.app.json" },
{ "path": "./.nuxt/tsconfig.server.json" },
{ "path": "./.nuxt/tsconfig.shared.json" },
{ "path": "./.nuxt/tsconfig.node.json" }
],
"files": []
} }