generated from Barbapapazes/gavarnie
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit d598a1b
Showing
63 changed files
with
12,928 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
NUXT_APP_NAME=Example | ||
NUXT_APP_URL=http://localhost:3000 | ||
|
||
NUXT_MAIL_KEY= | ||
NUXT_MAIL_FROM=[email protected] | ||
|
||
NUXT_OAUTH_GITHUB_CLIENT_ID= | ||
NUXT_OAUTH_GITHUB_CLIENT_SECRET= | ||
|
||
NUXT_OAUTH_TWITCH_CLIENT_ID= | ||
NUXT_OAUTH_TWITCH_CLIENT_SECRET= | ||
NUXT_OAUTH_TWITCH_REDIRECT_URL=http://localhost | ||
|
||
NUXT_SESSION_PASSWORD= |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
name: autofix.ci # needed to securely identify the workflow | ||
|
||
on: | ||
pull_request: | ||
push: | ||
branches: [main] | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
autofix: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 | ||
- run: corepack enable | ||
- uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4 | ||
with: | ||
node-version: 20.5 | ||
cache: pnpm | ||
|
||
- name: Install dependencies | ||
run: pnpm install | ||
|
||
- name: Lint & Fix | ||
run: pnpm run lint:fix | ||
|
||
- uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
{ | ||
"prettier.enable": false, | ||
"editor.formatOnSave": false, | ||
// Auto fix | ||
"editor.codeActionsOnSave": { | ||
"source.fixAll.eslint": "explicit", | ||
"source.organizeImports": "never" | ||
}, | ||
// Silent the stylistic rules in you IDE, but still auto fix them | ||
"eslint.rules.customizations": [ | ||
{ | ||
"rule": "style/*", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "format/*", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-indent", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-spacing", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-spaces", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-order", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-dangle", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*-newline", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*quotes", | ||
"severity": "off", | ||
"fixable": true | ||
}, | ||
{ | ||
"rule": "*semi", | ||
"severity": "off", | ||
"fixable": true | ||
} | ||
], | ||
// Enable eslint for all supported languages | ||
"eslint.validate": [ | ||
"javascript", | ||
"javascriptreact", | ||
"typescript", | ||
"typescriptreact", | ||
"vue", | ||
"html", | ||
"markdown", | ||
"json", | ||
"jsonc", | ||
"yaml", | ||
"toml", | ||
"xml", | ||
"gql", | ||
"graphql", | ||
"astro", | ||
"svelte", | ||
"css", | ||
"less", | ||
"scss", | ||
"pcss", | ||
"postcss" | ||
], | ||
"files.associations": { | ||
"*.css": "tailwindcss" | ||
}, | ||
"editor.quickSuggestions": { | ||
"strings": true | ||
}, | ||
"tailwindCSS.experimental.classRegex": [ | ||
[ | ||
"ui:\\s*{([^)]*)\\s*}", | ||
"[\"'`]([^\"'`]*).*?[\"'`]" | ||
], | ||
[ | ||
"/\\*\\s?ui\\s?\\*/\\s*{([^;]*)}", | ||
":\\s*[\"'`]([^\"'`]*).*?[\"'`]" | ||
] | ||
], | ||
"tailwindCSS.classAttributes": [ | ||
"class", | ||
"className", | ||
"ngClass", | ||
"ui" | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2024 Estéban Soubiran <https://github.com/barbapapazes> | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
# Gavarnie | ||
|
||
_[Read the announcement](https://soubiran.dev/posts/introducing-gavarnie-launch-your-saas-with-nuxt-and-assurance)_ | ||
|
||
Preconfigured and ready-to-use features designed to help you kickstart your full-stack NuxtHub project **quickly**. | ||
|
||
> [!NOTE] | ||
> My aim with Gavarnie is not just to create another starter kit, but to contribute to the initiative of advancing Nuxt and NuxtHub. | ||
> Therefore, Gavarnie serves as a starting point, rather than an end, and it's up to us to foster its development. Please join me in enhancing it. | ||
[⛰️ Gavarnie in action](https://gavarnie.barbapapazes.com) | ||
|
||
Crafted with [Nuxt UI Pro](https://ui.nuxt.com/pro), [NuxtHub](https://hub.nuxt.com), [Nuxt Auth Utils](https://github.com/atinux/nuxt-auth-utils), and [Nuxt Security](https://nuxt.com/modules/security). | ||
|
||
[![Deploy to NuxtHub](https://hub.nuxt.com/button.svg)](https://hub.nuxt.com/new?template=gavarnie) | ||
|
||
## Features | ||
|
||
- 🎨 **Nuxt UI**: Design stunning and responsive user interfaces swiftly with Nuxt UI | ||
- 💻 **NuxtHub**: Access an extensive array of full-stack capabilities with NuxtHub | ||
- 🔑 **Nuxt Auth Utils**: Simplified social authentication using Nuxt Auth Utils, seamlessly integrated with NuxtHub | ||
- 🚪 **Login & Signup**: Comes with built-in login and signup pages | ||
- 🧑 **Profile**: Ready-to-use profile page, with email modification and account removal options. | ||
|
||
## Setup | ||
|
||
Ensure to install the dependencies: | ||
|
||
```bash | ||
pnpm install | ||
``` | ||
|
||
Next, set up a `.env` file based on the `.env.example` template. Modify the values as necessary. | ||
|
||
## Development Server | ||
|
||
Launch the development server at `http://localhost:3000`: | ||
|
||
```bash | ||
pnpm run dev | ||
``` | ||
|
||
## Production | ||
|
||
This application is intended for deployment on [Cloudflare](https://cloudflare.com). You can effortlessly utilize [NuxtHub Admin](https://hub.nuxt.com/docs/getting-started/deploy#nuxthub-admin) for a smooth deployment process or use the CLI: | ||
|
||
```bash | ||
npx nuxthub deploy | ||
``` | ||
|
||
You will also need a [Nuxt UI Pro License](https://ui.nuxt.com/pro) to build the application for production. | ||
|
||
## License | ||
|
||
[MIT License](./LICENSE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
export default defineAppConfig({ | ||
ui: { | ||
primary: 'green', | ||
gray: 'stone', | ||
}, | ||
app: { | ||
logo: '/favicon.ico', | ||
}, | ||
footer: { | ||
notice: 'A Starter Template by Estéban "Barbapapazes"', | ||
smallLinks: [ | ||
{ | ||
label: 'Privacy Policy', | ||
to: '/privacy', | ||
}, | ||
{ | ||
label: 'Terms of Service', | ||
to: '/terms', | ||
}, | ||
{ | ||
label: 'Contact', | ||
to: 'mailto:[email protected]', | ||
}, | ||
], | ||
}, | ||
socials: [ | ||
{ | ||
title: 'GitHub', | ||
icon: 'i-simple-icons-github', | ||
to: 'https://github.com/barbapapazes/gavarnie', | ||
target: '_blank', | ||
}, | ||
{ | ||
title: 'X', | ||
icon: 'i-simple-icons-x', | ||
to: 'https://x.soubiran.dev', | ||
target: '_blank', | ||
}, | ||
{ | ||
title: 'LinkedIn', | ||
icon: 'i-simple-icons-linkedin', | ||
to: 'https://linkedin.soubiran.dev', | ||
target: '_blank', | ||
}, | ||
], | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
<script lang="ts" setup> | ||
useHead({ | ||
titleTemplate: title => title ? `${title} - Gavarnie` : 'Gavarnie', | ||
}) | ||
</script> | ||
|
||
<template> | ||
<div> | ||
<NuxtRouteAnnouncer /> | ||
|
||
<NuxtLayout> | ||
<NuxtPage /> | ||
</NuxtLayout> | ||
|
||
<UNotifications /> | ||
</div> | ||
</template> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
<script lang="ts" setup> | ||
const props = defineProps<{ | ||
src: string | null | ||
}>() | ||
const src = computed(() => { | ||
if (!props.src) { | ||
return | ||
} | ||
if (props.src.startsWith('http') || props.src.startsWith('data')) { | ||
return props.src | ||
} | ||
// Prefix the image path with the images folder | ||
return `images/${props.src}` | ||
}) | ||
</script> | ||
|
||
<template> | ||
<UAvatar :src /> | ||
</template> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
<script lang="ts" setup> | ||
const title = useRuntimeConfig().app.name | ||
const appConfig = useAppConfig() | ||
const notice = appConfig.footer.notice | ||
const smallLinks = appConfig.footer.smallLinks | ||
const socials = appConfig.socials | ||
</script> | ||
|
||
<template> | ||
<UFooter | ||
:links="smallLinks" | ||
:ui="{ bottom: { left: 'text-sm text-gray-600 dark:text-gray-300' } }" | ||
> | ||
<template #left> | ||
{{ title }} - {{ notice }} | ||
</template> | ||
|
||
<template #right> | ||
<UButton | ||
v-for="social in socials" | ||
:key="social.title" | ||
square | ||
color="gray" | ||
variant="ghost" | ||
v-bind="social" | ||
/> | ||
</template> | ||
</UFooter> | ||
</template> |
Oops, something went wrong.