SEO optimization

2.0
adb-sh 2 years ago
parent cffa95a91e
commit 58025e24b5

163
package-lock.json generated

@ -12,7 +12,8 @@
"@vuepress/theme-default": "^1.9.7",
"bootstrap": "^5.2.1",
"bootstrap-darkmode": "^5.0.1",
"bootstrap-icons": "^1.9.1"
"bootstrap-icons": "^1.9.1",
"vuepress-plugin-sitemap": "^2.3.1"
},
"devDependencies": {
"dart-sass": "^1.25.0",
@ -4409,8 +4410,7 @@
"node_modules/commander": {
"version": "2.17.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
"dev": true
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
},
"node_modules/commondir": {
"version": "1.0.1",
@ -6195,6 +6195,15 @@
"node": ">=4.0.0"
}
},
"node_modules/esm": {
"version": "3.2.25",
"resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz",
"integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==",
"peer": true,
"engines": {
"node": ">=6"
}
},
"node_modules/esprima": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
@ -8674,6 +8683,11 @@
"integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==",
"dev": true
},
"node_modules/lodash.chunk": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
"integrity": "sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w=="
},
"node_modules/lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
@ -8696,6 +8710,16 @@
"integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==",
"dev": true
},
"node_modules/lodash.padstart": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz",
"integrity": "sha512-sW73O6S8+Tg66eY56DBk85aQzzUJDtpoXFBgELMd5P/SotAguo+1kYO6RuYgXxA4HJH3LFTFPASX6ET6bjfriw=="
},
"node_modules/lodash.sortby": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
"integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA=="
},
"node_modules/lodash.template": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz",
@ -12137,6 +12161,21 @@
"integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
"dev": true
},
"node_modules/sitemap": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-3.2.2.tgz",
"integrity": "sha512-TModL/WU4m2q/mQcrDgNANn0P4LwprM9MMvG4hu5zP4c6IIKs2YLTu6nXXnNr8ODW/WFtxKggiJ1EGn2W0GNmg==",
"dependencies": {
"lodash.chunk": "^4.2.0",
"lodash.padstart": "^4.6.1",
"whatwg-url": "^7.0.0",
"xmlbuilder": "^13.0.0"
},
"engines": {
"node": ">=6.0.0",
"npm": ">=4.0.0"
}
},
"node_modules/slash": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
@ -13326,6 +13365,14 @@
"node": ">=0.8"
}
},
"node_modules/tr46": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
"integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==",
"dependencies": {
"punycode": "^2.1.0"
}
},
"node_modules/tslib": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
@ -14220,6 +14267,22 @@
"markdown-it-container": "^2.0.0"
}
},
"node_modules/vuepress-plugin-sitemap": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-2.3.1.tgz",
"integrity": "sha512-n+8lbukhrKrsI9H/EX0EBgkE1pn85LAQFvQ5dIvrZP4Kz6JxPOPPNTQmZMhahQV1tXbLZQCEN7A1WZH4x+arJQ==",
"dependencies": {
"sitemap": "^3.0.0"
},
"bin": {
"vuepress-sitemap": "cli.js"
},
"peerDependencies": {
"chalk": "^2.0.0",
"commander": "^2.0.0",
"esm": "^3.0.0"
}
},
"node_modules/vuepress-plugin-smooth-scroll": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/vuepress-plugin-smooth-scroll/-/vuepress-plugin-smooth-scroll-0.0.3.tgz",
@ -14401,6 +14464,11 @@
"minimalistic-assert": "^1.0.0"
}
},
"node_modules/webidl-conversions": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
"integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
},
"node_modules/webpack": {
"version": "4.46.0",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz",
@ -14698,6 +14766,16 @@
"node": ">=0.8.0"
}
},
"node_modules/whatwg-url": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
"integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
"dependencies": {
"lodash.sortby": "^4.7.0",
"tr46": "^1.0.1",
"webidl-conversions": "^4.0.2"
}
},
"node_modules/when": {
"version": "3.6.4",
"resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz",
@ -14857,6 +14935,14 @@
"node": ">=8"
}
},
"node_modules/xmlbuilder": {
"version": "13.0.2",
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-13.0.2.tgz",
"integrity": "sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ==",
"engines": {
"node": ">=6.0"
}
},
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
@ -18446,8 +18532,7 @@
"commander": {
"version": "2.17.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
"dev": true
"integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg=="
},
"commondir": {
"version": "1.0.1",
@ -19838,6 +19923,12 @@
"estraverse": "^4.1.1"
}
},
"esm": {
"version": "3.2.25",
"resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz",
"integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==",
"peer": true
},
"esprima": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
@ -21727,6 +21818,11 @@
"integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==",
"dev": true
},
"lodash.chunk": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz",
"integrity": "sha512-ZzydJKfUHJwHa+hF5X66zLFCBrWn5GeF28OHEr4WVWtNDXlQ/IjWKPBiikqKo2ne0+v6JgCgJ0GzJp8k8bHC7w=="
},
"lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
@ -21749,6 +21845,16 @@
"integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==",
"dev": true
},
"lodash.padstart": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/lodash.padstart/-/lodash.padstart-4.6.1.tgz",
"integrity": "sha512-sW73O6S8+Tg66eY56DBk85aQzzUJDtpoXFBgELMd5P/SotAguo+1kYO6RuYgXxA4HJH3LFTFPASX6ET6bjfriw=="
},
"lodash.sortby": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
"integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA=="
},
"lodash.template": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz",
@ -24549,6 +24655,17 @@
}
}
},
"sitemap": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-3.2.2.tgz",
"integrity": "sha512-TModL/WU4m2q/mQcrDgNANn0P4LwprM9MMvG4hu5zP4c6IIKs2YLTu6nXXnNr8ODW/WFtxKggiJ1EGn2W0GNmg==",
"requires": {
"lodash.chunk": "^4.2.0",
"lodash.padstart": "^4.6.1",
"whatwg-url": "^7.0.0",
"xmlbuilder": "^13.0.0"
}
},
"slash": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
@ -25513,6 +25630,14 @@
"punycode": "^2.1.1"
}
},
"tr46": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz",
"integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==",
"requires": {
"punycode": "^2.1.0"
}
},
"tslib": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
@ -26237,6 +26362,14 @@
"markdown-it-container": "^2.0.0"
}
},
"vuepress-plugin-sitemap": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-2.3.1.tgz",
"integrity": "sha512-n+8lbukhrKrsI9H/EX0EBgkE1pn85LAQFvQ5dIvrZP4Kz6JxPOPPNTQmZMhahQV1tXbLZQCEN7A1WZH4x+arJQ==",
"requires": {
"sitemap": "^3.0.0"
}
},
"vuepress-plugin-smooth-scroll": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/vuepress-plugin-smooth-scroll/-/vuepress-plugin-smooth-scroll-0.0.3.tgz",
@ -26376,6 +26509,11 @@
"minimalistic-assert": "^1.0.0"
}
},
"webidl-conversions": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz",
"integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg=="
},
"webpack": {
"version": "4.46.0",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz",
@ -26600,6 +26738,16 @@
"integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==",
"dev": true
},
"whatwg-url": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz",
"integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==",
"requires": {
"lodash.sortby": "^4.7.0",
"tr46": "^1.0.1",
"webidl-conversions": "^4.0.2"
}
},
"when": {
"version": "3.6.4",
"resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz",
@ -26734,6 +26882,11 @@
"integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",
"dev": true
},
"xmlbuilder": {
"version": "13.0.2",
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-13.0.2.tgz",
"integrity": "sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ=="
},
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",

@ -24,6 +24,7 @@
"@vuepress/theme-default": "^1.9.7",
"bootstrap": "^5.2.1",
"bootstrap-darkmode": "^5.0.1",
"bootstrap-icons": "^1.9.1"
"bootstrap-icons": "^1.9.1",
"vuepress-plugin-sitemap": "^2.3.1"
}
}

@ -4,7 +4,14 @@ module.exports = {
head: [
['meta', { name: 'theme-color', content: '#3eaf7c' }],
['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }],
['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }]
['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }],
['meta', { name: 'author', content: 'Alban David Becker' }],
['meta', { name: 'publisher', content: 'Alban David Becker' }],
['meta', { name: 'copyright', content: 'Alban David Becker' }],
['meta', { name: 'keywords', content: 'Alban, David, Becker, web development, development, hosting, open source, FOSS, music, DJ' }],
['meta', { name: 'page-type', content: 'Private Homepage' }],
['meta', { name: 'robots', content: 'follow' }],
['meta', { 'http-equiv': 'content-language', content: 'en' }],
],
markdown: {
anchor: { permalink: false },
@ -46,7 +53,11 @@ module.exports = {
],
}
},
plugins: [
'@vuepress/plugin-search',
],
plugins: {
'@vuepress/plugin-search': {},
'vuepress-plugin-sitemap': {
hostname: 'https://adb.sh/',
exclude: ['/404.html'],
}
}
}

@ -1,5 +1,12 @@
---
home: true
meta:
- name: description
content: Alban David Becker - Web Development, Engineering, Hosting, Music
- name: keywords
content: Alban, David, Becker, web development, development, hosting, devops, open source, FOSS
- name: robots
content: index, follow
---
<HomeContent />
@ -39,6 +46,40 @@ home: true
----
## :smile: about me
- studying Applied Informatics in North of Germany
- working at [54GradSoftware](htttps://54gradsoftware.de)
### techniques im familiar with
#### programming languages & frameworks
- HTML
- CSS
- JavaScript
- TypeScript
- NodeJS
- Express
- Vue
- Arduino Framework
#### software
- KiCad
- Autodesk Eagle
- Adobe Creative Cloud
- Photoshop
- Premiere
- Indesign
- Illustrator
#### other
- Linux
- Debian & Ubuntu
- nixOS
- Docker
- Ansible
- MariaDB & Postgres
- MongoDB
- Redis
## :mailbox_with_mail: contact me
- Matrix: [@adb:adb.sh](https://matrix.to/#/@adb:adb.sh)

@ -1,6 +1,13 @@
---
meta:
- name: description
content: I do music and DJing
- name: keywords
content: Alban, David, Becker, music, techno, melodic techno, DJ, djing
---
# Music
i do music n stuff
i do music 'n' stuff
## DJ sets
### Techno

@ -2,6 +2,11 @@
sidebar: true
excerpt: "Art-Net to DMX PCB"
imgUrl: "https://social.cybre.town/system/media_attachments/files/105/520/482/627/757/197/original/ba1084550d15d53f.jpeg"
meta:
- name: description
content: Art-Net to DMX PCB
- name: keywords
content: Alban, David, Becker, ArtNet, development, embedded systems, hardware, Arduino, KiCad, pcb
---
# ArtNet-Node

@ -1,4 +1,9 @@
---
meta:
- name: description
content: recent projects from me
- name: keywords
content: Alban, David, Becker, projects, development, software, embedded systems, hardware
---
# Projects

@ -2,6 +2,11 @@
sidebar: true
excerpt: "a simple matrix webapp for mobile and desktop"
imgUrl: "https://chat.adb.sh/media/screenshot-desktop.png"
meta:
- name: description
content: a simple matrix webapp for mobile and desktop
- name: keywords
content: Alban, David, Becker, matrix, matrix-chat, chat, federation, vue, web, javascript
---
# **[chat]** *matrix-chat*

@ -2,6 +2,11 @@
sidebar: true
excerpt: "I'm running my services on my own server, because it's fun :D"
imgUrl: "https://social.cybre.town/system/media_attachments/files/106/116/563/016/082/536/original/968136dcb22aca7e.jpg"
meta:
- name: description
content: my home server rack
- name: keywords
content: Alban, David, Becker, server, hosting, networking, development, devops
---
# My Server Rack

@ -1,6 +1,11 @@
---
sidebar: true
excerpt: "a complete working docker-compose setup for the matrix synapse server with postgres"
meta:
- name: description
content: a complete working docker-compose setup for the matrix synapse server with postgres
- name: keywords
content: Alban, David, Becker, matrix, synapse, docker, docker compose, devops
---
# docker-compose matrix-synapse

@ -1,6 +1,11 @@
---
sidebar: true
excerpt: "a simple webdav client in Vue3"
meta:
- name: description
content: a simple webdav client in Vue3
- name: keywords
content: Alban, David, Becker, vuedav, cloud, dav, vue, web, javascript, node, typescript
---
# vuedav

Loading…
Cancel
Save