diff --git a/.woodpecker/build.yml b/.woodpecker/build.yml new file mode 100644 index 0000000..13d578b --- /dev/null +++ b/.woodpecker/build.yml @@ -0,0 +1,23 @@ +steps: + - name: build + image: node:alpine + commands: + - npm install -g pnpm + - pnpm install + - pnpm build + when: + - event: push + - event: pull_request + + - name: publish + image: debian:12 + commands: + - apt update -y && apt install -y rsync openssh-client + - printf "Host *\n StrictHostKeyChecking no" >> /etc/ssh/ssh_config + - ssh-agent bash -c "ssh-add <(echo '$KEY' | base64 -d) && rsync --archive --verbose --compress --hard-links --delete-during --partial --progress ./.output/ root@gorb.app:/var/www/gorb.app && ssh root@gorb.app systemctl restart gorb.app.service" + environment: + KEY: + from_secret: ssh_key + when: + - branch: main + event: push diff --git a/nuxt.config.ts b/nuxt.config.ts index c27a274..54649b8 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -2,5 +2,20 @@ export default defineNuxtConfig({ compatibilityDate: '2024-11-01', devtools: { enabled: true }, - modules: ['@nuxt/fonts', '@nuxt/image'] + modules: ['@nuxt/fonts', '@nuxt/image'], + app: { + head: { + title: 'Gorb - The Chat App', + // this is purely used to embed in that other chat app, and similar stuff + meta: [ + { property: 'og:title', content: 'Gorb - The Federated Chat App' }, + { property: 'og:description', content: 'GORB! The open-source and federated chat application!' }, + // { property: 'og:image', content: 'missing' }, + { property: 'og:url', content: 'https://gorb.app' }, + { property: 'og:type', content: 'website' }, + { property: 'og:site_name', content: 'Gorb' }, + { property: 'theme-color', content: "#c200c2" } + ] + } + } }) \ No newline at end of file diff --git a/pages/index.vue b/pages/index.vue index 5d53c22..c7eac12 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -15,6 +15,13 @@