Skip to content

feat(nuxt): Add nuxt example application #36

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 24, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions apps/nuxt/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Nuxt dev/build outputs
.output
.data
.nuxt
.nitro
.cache
dist

# Node dependencies
node_modules

# Logs
logs
*.log

# Misc
.DS_Store
.fleet
.idea

# Local env files
.env
.env.*
!.env.example
16 changes: 16 additions & 0 deletions apps/nuxt/app.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<template>
<NuxtLayout>
<header>
<nav>
<ul>
<li><NuxtLink to="/test-param/1234">About</NuxtLink></li>
<li><NuxtLink to="/catchAll/my-id-1337">Post 1</NuxtLink></li>
<li><NuxtLink to="/404">404</NuxtLink></li>
<li><NuxtLink to="/?middleware">Faulty Router Middleware</NuxtLink></li>
</ul>
</nav>
</header>
<NuxtPage />
</NuxtLayout>
</template>
<script setup lang="ts"></script>
5 changes: 5 additions & 0 deletions apps/nuxt/middleware/error.global.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export default defineNuxtRouteMiddleware(to => {
if ('middleware' in to.query) {
return showError('error in middleware');
}
});
16 changes: 16 additions & 0 deletions apps/nuxt/nuxt.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import * as Sentry from '@sentry/nuxt';

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
devtools: { enabled: true },
modules: ['@sentry/nuxt'],

runtimeConfig: {
public: {
sentry: {
dsn: '' /* DSN */,
debug: true,
},
},
},
});
18 changes: 18 additions & 0 deletions apps/nuxt/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"name": "nuxt-app",
"private": true,
"type": "module",
"scripts": {
"build": "nuxt build",
"dev": "nuxt dev",
"generate": "nuxt generate",
"preview": "nuxt preview",
"postinstall": "nuxt prepare"
},
"dependencies": {
"@sentry/nuxt": "file:.yalc/@sentry/nuxt",
"nuxt": "^3.12.2",
"vue": "^3.4.29",
"vue-router": "^4.3.3"
}
}
3 changes: 3 additions & 0 deletions apps/nuxt/pages/catchAll/[...id].vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<template>
<div>test-{{ $route.params.id }}</div>
</template>
13 changes: 13 additions & 0 deletions apps/nuxt/pages/index.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<template>
<div><button @click="triggerError">Trigger Error</button><br /></div>
</template>

<script>
export default {
methods: {
triggerError() {
throw new Error('This is a test error for Sentry');
},
},
};
</script>
3 changes: 3 additions & 0 deletions apps/nuxt/pages/test-param/[param].vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<template>
<p>{{ $route.params.param }} - {{ $route.params.param }}</p>
</template>
Binary file added apps/nuxt/public/favicon.ico
Binary file not shown.
5 changes: 5 additions & 0 deletions apps/nuxt/server/api/test-param/[param].ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export default defineEventHandler(event => {
const param = getRouterParam(event, 'param');

return `Param: ${param}!`;
});
5 changes: 5 additions & 0 deletions apps/nuxt/server/middleware/error.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
export default defineEventHandler(event => {
if ('api' in getQuery(event)) {
throw new Error('Server middleware error');
}
});
3 changes: 3 additions & 0 deletions apps/nuxt/server/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "../.nuxt/tsconfig.server.json"
}
4 changes: 4 additions & 0 deletions apps/nuxt/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
// https://nuxt.com/docs/guide/concepts/typescript
"extends": "./.nuxt/tsconfig.json"
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -65,6 +65,7 @@
"apps/astro",
"apps/nextjs-13_2_0",
"apps/nextjs-14_2_1",
"apps/nuxt",
"apps/sveltekit-2",
"apps/remix"
],
Loading