first commit
This commit is contained in:
24
.gitignore
vendored
Normal file
24
.gitignore
vendored
Normal file
@@ -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
|
||||
75
README.md
Normal file
75
README.md
Normal file
@@ -0,0 +1,75 @@
|
||||
# Nuxt Minimal Starter
|
||||
|
||||
Look at the [Nuxt documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
|
||||
|
||||
## Setup
|
||||
|
||||
Make sure to install dependencies:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm install
|
||||
|
||||
# pnpm
|
||||
pnpm install
|
||||
|
||||
# yarn
|
||||
yarn install
|
||||
|
||||
# bun
|
||||
bun install
|
||||
```
|
||||
|
||||
## Development Server
|
||||
|
||||
Start the development server on `http://localhost:3000`:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run dev
|
||||
|
||||
# pnpm
|
||||
pnpm dev
|
||||
|
||||
# yarn
|
||||
yarn dev
|
||||
|
||||
# bun
|
||||
bun run dev
|
||||
```
|
||||
|
||||
## Production
|
||||
|
||||
Build the application for production:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run build
|
||||
|
||||
# pnpm
|
||||
pnpm build
|
||||
|
||||
# yarn
|
||||
yarn build
|
||||
|
||||
# bun
|
||||
bun run build
|
||||
```
|
||||
|
||||
Locally preview production build:
|
||||
|
||||
```bash
|
||||
# npm
|
||||
npm run preview
|
||||
|
||||
# pnpm
|
||||
pnpm preview
|
||||
|
||||
# yarn
|
||||
yarn preview
|
||||
|
||||
# bun
|
||||
bun run preview
|
||||
```
|
||||
|
||||
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
|
||||
68
app/app.vue
Normal file
68
app/app.vue
Normal file
@@ -0,0 +1,68 @@
|
||||
<template>
|
||||
<v-app>
|
||||
<!-- Toolbar at the top of the screen -->
|
||||
<v-app-bar color="primary" height="48">
|
||||
<!-- Title of the application with adjusted margin and font size -->
|
||||
<v-app-bar-title class="text-h6 ms-3">
|
||||
<v-icon icon="mdi-apps" @click="drawer = !drawer"></v-icon>
|
||||
|
||||
<span class="ms-1">My Application</span>
|
||||
</v-app-bar-title>
|
||||
|
||||
<!-- Spacer to push the following elements to the right -->
|
||||
<v-spacer />
|
||||
|
||||
<!-- Menu icons on the right side of the toolbar -->
|
||||
<v-btn icon="mdi-home" @click="navigateTo('/')"></v-btn>
|
||||
|
||||
<v-btn
|
||||
icon="mdi-cube-outline"
|
||||
@click="navigateTo('/products')"
|
||||
></v-btn>
|
||||
|
||||
<v-btn icon="mdi-email" @click="navigateTo('/contact')"></v-btn>
|
||||
</v-app-bar>
|
||||
|
||||
<!-- Navigation drawer for menu actions -->
|
||||
<v-navigation-drawer v-model="drawer">
|
||||
<v-list>
|
||||
<!-- Menu items in the drawer with icons -->
|
||||
<v-list-item
|
||||
@click="navigateTo('/')"
|
||||
title="Home"
|
||||
prepend-icon="mdi-home"
|
||||
></v-list-item>
|
||||
|
||||
<v-list-item
|
||||
@click="navigateTo('/products')"
|
||||
title="Products"
|
||||
prepend-icon="mdi-cube-outline"
|
||||
></v-list-item>
|
||||
|
||||
<v-list-item
|
||||
@click="navigateTo('/contact')"
|
||||
title="Contact"
|
||||
prepend-icon="mdi-email"
|
||||
></v-list-item>
|
||||
</v-list>
|
||||
</v-navigation-drawer>
|
||||
|
||||
<!-- Main content of the application -->
|
||||
<v-main>
|
||||
<NuxtPage />
|
||||
</v-main>
|
||||
|
||||
<!-- Smaller footer at the bottom of the screen -->
|
||||
<v-footer app color="secondary" height="30">
|
||||
<v-container class="text-caption text-center">
|
||||
© {{ new Date().getFullYear() }} My Application - All Rights
|
||||
Reserved
|
||||
</v-container>
|
||||
</v-footer>
|
||||
</v-app>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
// Drawer state to open/close the navigation drawer
|
||||
const drawer = shallowRef(false);
|
||||
</script>
|
||||
9
app/pages/contact.vue
Normal file
9
app/pages/contact.vue
Normal file
@@ -0,0 +1,9 @@
|
||||
<template>
|
||||
<v-container
|
||||
class="fill-height d-flex flex-column align-center justify-center text-center"
|
||||
>
|
||||
<v-icon icon="mdi-account-box" size="64"></v-icon>
|
||||
|
||||
<div class="mt-3">My Application's Contact Page</div>
|
||||
</v-container>
|
||||
</template>
|
||||
9
app/pages/index.vue
Normal file
9
app/pages/index.vue
Normal file
@@ -0,0 +1,9 @@
|
||||
<template>
|
||||
<v-container
|
||||
class="fill-height d-flex flex-column align-center justify-center text-center"
|
||||
>
|
||||
<v-icon icon="mdi-home" size="64"></v-icon>
|
||||
|
||||
<div class="mt-3">My Application's Home Page</div>
|
||||
</v-container>
|
||||
</template>
|
||||
9
app/pages/products.vue
Normal file
9
app/pages/products.vue
Normal file
@@ -0,0 +1,9 @@
|
||||
<template>
|
||||
<v-container
|
||||
class="fill-height d-flex flex-column align-center justify-center text-center"
|
||||
>
|
||||
<v-icon icon="mdi-cube-outline" size="64"></v-icon>
|
||||
|
||||
<div class="mt-3">My Application's Products Page</div>
|
||||
</v-container>
|
||||
</template>
|
||||
7
app/plugins/vuetify.js
Normal file
7
app/plugins/vuetify.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import { createVuetify } from "vuetify";
|
||||
import * as components from "vuetify/components";
|
||||
|
||||
export default defineNuxtPlugin((nuxtApp) => {
|
||||
const vuetify = createVuetify({ components });
|
||||
nuxtApp.vueApp.use(vuetify);
|
||||
});
|
||||
13
nuxt.config.ts
Normal file
13
nuxt.config.ts
Normal file
@@ -0,0 +1,13 @@
|
||||
// https://nuxt.com/docs/api/configuration/nuxt-config
|
||||
export default defineNuxtConfig({
|
||||
compatibilityDate: "2025-07-15",
|
||||
//pages: true,
|
||||
ssr: false,
|
||||
devtools: { enabled: false },
|
||||
css: ["vuetify/styles", "@mdi/font/css/materialdesignicons.min.css"],
|
||||
plugins: ["~/plugins/vuetify.js"],
|
||||
components: true,
|
||||
build: {
|
||||
transpile: ["vuetify"],
|
||||
},
|
||||
});
|
||||
11867
package-lock.json
generated
Normal file
11867
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
19
package.json
Normal file
19
package.json
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "nuxt-app",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "nuxt build",
|
||||
"dev": "nuxt dev",
|
||||
"generate": "nuxt generate",
|
||||
"preview": "nuxt preview",
|
||||
"postinstall": "nuxt prepare"
|
||||
},
|
||||
"dependencies": {
|
||||
"@mdi/font": "^7.4.47",
|
||||
"nuxt": "^4.0.1",
|
||||
"vue": "^3.5.18",
|
||||
"vue-router": "^4.5.1",
|
||||
"vuetify": "^3.9.3"
|
||||
}
|
||||
}
|
||||
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
2
public/robots.txt
Normal file
2
public/robots.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
User-Agent: *
|
||||
Disallow:
|
||||
18
tsconfig.json
Normal file
18
tsconfig.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
// https://nuxt.com/docs/guide/concepts/typescript
|
||||
"files": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./.nuxt/tsconfig.app.json"
|
||||
},
|
||||
{
|
||||
"path": "./.nuxt/tsconfig.server.json"
|
||||
},
|
||||
{
|
||||
"path": "./.nuxt/tsconfig.shared.json"
|
||||
},
|
||||
{
|
||||
"path": "./.nuxt/tsconfig.node.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user