Optimized default portfolio conf

This commit is contained in:
Kevin Veen-Birkenbach 2025-02-19 17:43:07 +01:00
parent e10deb9e54
commit d83c7e280f
2 changed files with 135 additions and 248 deletions

View File

@ -1,14 +1,24 @@
# This is just a dummy person. # This is just a dummy person.
# Adapt the values in your inventory file # Adapt the values in your inventory file
person: person:
type: "legal" # Accepted Values: natural, legal type: "legal" # Accepted Values: natural, legal
name: "CyMaIS Demo Instance" name: "CyMaIS Demo Instance"
description:
subtitel: "Infrastructure Demo solutions" # Should be the length of su
summary: "We offer infrastructure solutions for the world"
detailed: ""
address: address:
street: "Binary Avenue 01" street: "Binary Avenue 01"
city: "Cybertown" city: "Cybertown"
postal_code: "00001" postal_code: "00001"
country: "Nexusland" country: "Nexusland"
contact: contact:
bluesky: "@{{administrator_username}}.{{domains.bluesky_api}}"
email: "contact@{{primary_domain}}" email: "contact@{{primary_domain}}"
mastodon: "@{{administrator_username}}@{{domains.mastodon}}"
matrix: "@{{administrator_username}}:{{domains.matrix_synapse}}"
peertube: "@{{administrator_username}}@{{domains.peertube}}"
pixelfed: "@{{administrator_username}}@{{domains.pixelfed}}"
phone: "+0 000 000 404" phone: "+0 000 000 404"
mastodon: "@{{administrator_username}}@{{domains.mastodon}}" wordpress: "@{{administrator_username}}@{{domains.wordpress}}[0]"
code: "https://github.com/kevinveenbirkenbach/cymais"

View File

@ -11,182 +11,68 @@ accounts:
class: fas fa-newspaper class: fas fa-newspaper
children: children:
- name: Microblogs - name: Microblogs
description: Stay updated with {{ 'our' if person.type == 'legal' else 'my' }} microblog posts. description: Stay updated with {{ 'our' if person.type == 'legal' else 'my' }} microblogs.
icon: icon:
class: fa-solid fa-pen-nib class: fa-solid fa-pen-nib
children: children:
{% if person.contact.mastodon is defined %}
- name: Mastodon - name: Mastodon
description: Follow {{ 'our' if person.type == 'legal' else 'my' }} updates on Mastodon. description: Follow {{ 'our' if person.type == 'legal' else 'my' }} updates on Mastodon.
icon: icon:
class: fa-brands fa-mastodon class: fa-brands fa-mastodon
url: https://{{ person.contact.mastodon.split('@')[2] }}/@{{ person.contact.mastodon.split('@')[1] }} url: "https://{{ person.contact.mastodon.split('@')[2] }}/@{{ person.contact.mastodon.split('@')[1] }}"
identifier: "{{person.contact.mastodon}}" identifier: "{{person.contact.mastodon}}"
{% end %}
{% if person.contact.bluesky is defined %}
- name: Bluesky - name: Bluesky
description: Follow me on Bluesky (coming soon). description: Follow {{ 'our' if person.type == 'legal' else 'my' }} on Bluesky.
icon: icon:
class: fa-brands fa-bluesky class: fa-brands fa-bluesky
info: Bluesky is coming soon.
alternatives: alternatives:
- link: accounts.publishingchannels.microblogs.mastodon - link: accounts.publishingchannels.microblogs.mastodon
identifier: "{{person.contact.bluesky}}"
{% end %}
{% if person.contact.pixelfed is defined %}
- name: Pictures - name: Pictures
description: View {{ 'our' if person.type == 'legal' else 'my' }} photography. description: Explore {{ 'our' if person.type == 'legal' else 'my' }} photo gallery on Pixelfed.
icon: icon:
class: fa-solid fa-images class: fa-solid fa-camera
children: identifier: "{{person.contact.pixelfed}}"
- name: Pixelfed url: "https://{{ person.contact.pixelfed.split('@')[2] }}/@{{ person.contact.pixelfed.split('@')[1] }}"
description: Explore {{ 'our' if person.type == 'legal' else 'my' }} photo gallery on Pixelfed. {% end %}
icon: {% if person.contact.peertube is defined %}
class: fa-solid fa-camera - name: Peertube
url: https://s.veen.world/pictures description: Discover {{ 'our' if person.type == 'legal' else 'my' }} videos on Peertube.
- name: Instagram
description: Follow me on Instagram.
icon:
class: fa-brands fa-instagram
url: https://www.instagram.com/kevinveenbirkenbach/
identifier: kevinveenbirkenbach
warning: Platforms by Meta (e.g., Instagram, Facebook) may compromise your data privacy. Consider using decentralized alternatives.
alternatives:
- link: accounts.publishingchannels.pictures.pixelfed
- name: Videos
description: Watch {{ 'our' if person.type == 'legal' else 'my' }} video content.
icon: icon:
class: fa-solid fa-video class: fa-solid fa-video
children: identifier: "{{person.contact.peertube}}"
- name: Peertube url: "https://{{ person.contact.peertube.split('@')[2] }}/@{{ person.contact.peertube.split('@')[1] }}"
description: Discover {{ 'our' if person.type == 'legal' else 'my' }} videos on Peertube. {% end %}
icon: {% if person.contact.wordpress is defined %}
class: fa-solid fa-video
url: https://s.veen.world/videos
- name: YouTube
description: Follow me on YouTube (inactive).
icon:
class: fa-brands fa-youtube
url: https://s.veen.world/youtube
warning: I no longer publish videos on YouTube. Please visit {{ 'our' if person.type == 'legal' else 'my' }} Peertube channel instead.
alternatives:
- link: accounts.publishingchannels.videos.peertube
- name: Blog - name: Blog
description: Read {{ 'our' if person.type == 'legal' else 'my' }} articles and stories. description: Read {{ 'our' if person.type == 'legal' else 'my' }} articles and stories.
icon: icon:
class: fa-solid fa-blog class: fa-solid fa-blog
url: https://blog.veen.world identifier: "{{person.contact.wordpress}}"
url: "https://{{ person.contact.wordpress.split('@')[2] }}/@{{ person.contact.wordpress.split('@')[1] }}"
{% end %}
{% if person.contact.code is defined %}
- name: Code - name: Code
description: Access {{ 'our' if person.type == 'legal' else 'my' }} coding projects. description: Explore {{ 'our' if person.type == 'legal' else 'my' }} code.
icon: icon:
class: fa-solid fa-laptop-code class: fa-solid fa-code
children: url: "{{person.code}}"
- name: GitHub {% end %}
description: View {{ 'our' if person.type == 'legal' else 'my' }} GitHub repositories. {% if person.contact.friendica is defined %}
icon:
class: bi bi-github
url: https://github.com/kevinveenbirkenbach
- name: Gitea
description: Explore {{ 'our' if person.type == 'legal' else 'my' }} self-hosted repositories.
icon:
class: fa-solid fa-code
url: https://git.veen.world/kevinveenbirkenbach
- name: Social Networks - name: Social Networks
description: Social and developer platforms. description: Visit {{ 'our' if person.type == 'legal' else 'my' }} friendica profile
icon: icon:
class: fa fa-users class: fas fa-network-wired
children: identifier: "{{person.contact.friendica}}"
- name: Facebook url: "https://{{ person.contact.friendica.split('@')[2] }}/@{{ person.contact.friendica.split('@')[1] }}"
warning: I recommend to don't use Facebook and connect instead with me via the Fediverse. Check out the listed alternatives. {% end %}
description: Visit {{ 'our' if person.type == 'legal' else 'my' }} Facebook page.
icon:
class: fa-brands fa-facebook
url: https://www.facebook.com/kevinveenbirkenbach
alternatives:
- link: accounts.socialnetworks.friendica
- name: Friendica
description: Visit {{ 'our' if person.type == 'legal' else 'my' }} friendica profile
icon:
class: fas fa-network-wired
url: https://s.veen.world/friendica
identifier: "kevinveenbirkenbach@friendica.veen.world"
- link: navigation.header.contact.messenger - link: navigation.header.contact.messenger
- name: Career Profiles
description: Professional networking profiles.
icon:
class: fa-solid fa-user-tie
children:
- name: XING
description: View {{ 'our' if person.type == 'legal' else 'my' }} XING profile.
icon:
class: bi bi-building
url: https://s.veen.world/xing
- name: LinkedIn
description: Connect with me on LinkedIn.
icon:
class: bi bi-linkedin
url: https://s.veen.world/linkedin
- name: upwork.com
description: Check out {{ 'our' if person.type == 'legal' else 'my' }} profile on upwork
icon:
class: fas fa-users
url: https://s.veen.world/upwork
- name: freelancermap.de
description: Check out {{ 'our' if person.type == 'legal' else 'my' }} profile on freelancermap.de
icon:
class: fas fa-people-arrows
url: https://s.veen.world/freelancermap
- name: malt
description: Check out {{ 'our' if person.type == 'legal' else 'my' }} profile on malt
icon:
class: fas fa-sun
url: https://s.veen.world/malt
- name: Sports
description: My sports activities and logs.
icon:
class: fa-solid fa-running
children:
- name: Garmin
description: Explore {{ 'our' if person.type == 'legal' else 'my' }} Garmin activity records.
icon:
class: fa-solid fa-person-running
url: https://s.veen.world/garmin
- name: Eversports
description: View {{ 'our' if person.type == 'legal' else 'my' }} Eversports sessions.
icon:
class: fa-solid fa-dumbbell
url: https://s.veen.world/eversports
- name: Duolingo
description: Join me in language learning.
icon:
class: fa-solid fa-language
url: https://www.duolingo.com/profile/kevinbirkenbach
- name: Spotify
description: Listen to {{ 'our' if person.type == 'legal' else 'my' }} playlists.
icon:
class: fa-brands fa-spotify
url: https://open.spotify.com/user/31vebfzbjf3p7oualis76qfpr5ty
- name: Patreon
description: Support {{ 'our' if person.type == 'legal' else 'my' }} work on Patreon.
icon:
class: fa-brands fa-patreon
url: https://patreon.com/kevinveenbirkenbach
- name: Discourse
description: Join discussions on {{ 'our' if person.type == 'legal' else 'my' }} forum.
icon:
class: fa-brands fa-discourse
url: https://forum.veen.world/u/kevinveenbirkenbach
- name: Nextcloud
description: Share data with me via nextcloud
icon:
class: fa fa-cloud
url: https://s.veen.world/cloud
cards: cards:
- icon: - icon:
source: https://cloud.veen.world/s/logo_agile_coach_512x512/download source: https://cloud.veen.world/s/logo_agile_coach_512x512/download
@ -212,18 +98,23 @@ cards:
skipper, my expertise ensures a safe and enjoyable experience on the water. skipper, my expertise ensures a safe and enjoyable experience on the water.
url: https://www.yachtmaster.world url: https://www.yachtmaster.world
link_text: www.yachtmaster.world link_text: www.yachtmaster.world
- icon:
source: https://cloud.veen.world/s/logo_yachtmaster_512x512/download
title: Yachtmaster
text: As a Yachtmaster, I provide comprehensive sailing education, yacht delivery,
and voyage planning services. Whether you're learning to sail or need an experienced
skipper, my expertise ensures a safe and enjoyable experience on the water.
url: https://www.yachtmaster.world
link_text: www.yachtmaster.world
company: company:
titel: Kevin Veen-Birkenbach titel: {{person.name}}
subtitel: Consulting and Coaching Solutions subtitel: {{person.description.subtitel}}
logo: logo:
source: https://cloud.veen.world/s/logo_face_512x512/download source: https://cloud.veen.world/s/logo_face_512x512/download
favicon: favicon:
source: https://cloud.veen.world/s/veen_world_favicon/download source: https://cloud.veen.world/s/veen_world_favicon/download
address: address:
street: Afrikanische Straße 43 {{ person.address | to_nice_yaml(indent=4) | indent(2) }}
postal_code: DE-13351
city: Berlin
country: Germany
imprint_url: https://s.veen.world/imprint imprint_url: https://s.veen.world/imprint
navigation: navigation:
header: header:
@ -231,81 +122,37 @@ navigation:
- link: accounts.publishingchannels.children - link: accounts.publishingchannels.children
- link: accounts.socialnetworks - link: accounts.socialnetworks
- name: Contact - name: Contact
description: Get in touch description: Get in touch with {{ 'us' if person.type == 'legal' else 'me' }}
icon: icon:
class: fa-solid fa-envelope class: fa-solid fa-envelope
children: children:
{% end %}
{% if person.contact.email is defined %}
- name: Email - name: Email
description: Send me an email description: Send {{ 'us' if person.type == 'legal' else 'me' }} an email
icon: icon:
class: fa-solid fa-envelope class: fa-solid fa-envelope
children: url: mailto:{{person.contact.email}}
- name: Email identifier: {{person.contact.email}}
description: Send me an email alternatives:
icon: - link: navigation.header.contact.messenger.matrix
class: fa-solid fa-envelope {% end %}
url: mailto:kevin@veen.world {% if person.contact.phone is defined %}
identifier: kevin@veen.world
alternatives:
- link: navigation.header.contact.messenger.matrix
- name: Mobile - name: Mobile
description: Call me description: Call {{ 'us' if person.type == 'legal' else 'me' }}
icon: icon:
class: fa-solid fa-phone class: fa-solid fa-phone
url: "tel:+491781798023" url: "tel:{{person.contact.phone}}"
identifier: "+491781798023" identifier: "{{person.contact.phone}}"
target: _top target: _top
- name: Messenger {% end %}
description: Social and developer networks {% if person.contact.matrix is defined %}
- name: Matrix
description: Chat with {{ 'us' if person.type == 'legal' else 'me' }} on Matrix
icon: icon:
class: fa-solid fa-comments class: fa-solid fa-cubes
children: identifier: "{{person.contact.matrix}}"
- name: Matrix {% end %}
description: Chat with me on Matrix
icon:
class: fa-solid fa-cubes
identifier: "@kevinveenbirkenbach:veen.world"
info: |
#### Why Use Matrix?
Matrix is a secure, decentralized communication platform that ensures privacy and control over your data. Learn more about [Matrix](https://matrix.org/).
#### Privacy and Security
End-to-end encryption keeps your conversations private and secure.
#### Decentralized and Open
Matrix's federated network means you can host your own server or use any provider while staying connected.
#### A Movement for Digital Freedom
By using Matrix, you support open, transparent, and secure communication.
- name: Signal
description: Message me on Signal
icon:
class: fa-brands fa-signal-messenger
identifier: "+491781798023"
warning: Signal is not hosted by me!
alternatives:
- link: navigation.header.contact.messenger.matrix
- name: Telegram
description: Message me on Telegram
icon:
class: fa-brands fa-telegram
target: _blank
url: https://t.me/kevinveenbirkenbach
identifier: kevinveenbirkenbach
warning: Telegram is not hosted by me!
alternatives:
- link: navigation.header.contact.messenger.matrix
- name: WhatsApp
description: Chat with me on WhatsApp
icon:
class: fa-brands fa-whatsapp
url: https://wa.me/491781798023
identifier: "+491781798023"
info: Consider using decentralized and privacy-respecting alternatives to maintain control over your data, improve security, and foster healthier online interactions.
alternatives:
- link: navigation.header.contact.messenger.matrix
- link: navigation.header.contact.messenger.signal
- link: navigation.header.contact.messenger.telegram
footer: footer:
children: children:
- link: accounts - link: accounts
@ -320,21 +167,29 @@ navigation:
icon: icon:
class: fa-solid fa-users class: fa-solid fa-users
children: children:
{% end %}
{% if "discourse" in group_names %}
- name: Forum - name: Forum
description: Join the discussion description: Join the discussion
icon: icon:
class: fa-brands fa-discourse class: fa-brands fa-discourse
url: https://forum.veen.world/ url: https://{{domains.discourse}}/
{% end %}
{% if "moodle" in group_names %}
- name: Learning Platform - name: Learning Platform
description: Learn with {{ 'our' if person.type == 'legal' else 'my' }} academy description: Learn with {{ 'our' if person.type == 'legal' else 'my' }} academy
icon: icon:
class: fa-solid fa-graduation-cap class: fa-solid fa-graduation-cap
url: https://academy.veen.world/ url: https://{{domains.moodle}}/
{% end %}
{% if "listmonk" in group_names %}
- name: Newsletter - name: Newsletter
description: Subscribe to {{ 'our' if person.type == 'legal' else 'my' }} newsletter description: Subscribe to {{ 'our' if person.type == 'legal' else 'my' }} newsletter
icon: icon:
class: fa-solid fa-envelope-open-text class: fa-solid fa-envelope-open-text
url: https://newsletter.veen.world/subscription/form url: https://{{domains.listmonk}}/subscription/form
{% end %}
{% if "openproject" in group_names %}
- name: Project Management - name: Project Management
description: Project Management Tools description: Project Management Tools
icon: icon:
@ -344,85 +199,107 @@ navigation:
description: Explore {{ 'our' if person.type == 'legal' else 'my' }} projects description: Explore {{ 'our' if person.type == 'legal' else 'my' }} projects
icon: icon:
class: fa-solid fa-tasks class: fa-solid fa-tasks
url: https://project.veen.world/ url: https://{{domains.openproject}}/
{% end %}
{% if "taiga" in group_names %}
- name: Taiga - name: Taiga
description: View {{ 'our' if person.type == 'legal' else 'my' }} Kanban board description: View {{ 'our' if person.type == 'legal' else 'my' }} Kanban board
icon: icon:
class: bi bi-clipboard2-check-fill class: bi bi-clipboard2-check-fill
url: https://kanban.veen.world/ url: https://{{domains.taiga}}/
{% end %}
{% if "snipe_it" in group_names %}
- name: Snipe IT - name: Snipe IT
description: Manage {{ 'our' if person.type == 'legal' else 'my' }} inventory description: Manage {{ 'our' if person.type == 'legal' else 'my' }} inventory
icon: icon:
class: fas fa-box-open class: fas fa-box-open
url: https://inventory.veen.world/ url: https://{{domains.snipe_it}}/
{% end %}
- name: Communication - name: Communication
icon: icon:
class: fa-solid fa-comments class: fa-solid fa-comments
children: children:
{% end %}
{% if "matrix" in group_names %}
- name: Elements - name: Elements
description: Chat with me description: Chat with the world
icon: icon:
class: fa-solid fa-comment class: fa-solid fa-comment
url: https://element.veen.world/ url: https://{{domains.matrix_element}}/
{% end %}
{% if "bigbluebutton" in group_names %}
- name: Big Blue Button - name: Big Blue Button
description: Join live events description: Join live events
icon: icon:
class: fa-solid fa-video class: fa-solid fa-video
url: https://meet.veen.world/ url: https://{{domains.bigbluebutton}}/
{% end %}
{% if "mailu" in group_names %}
- name: Mailu - name: Mailu
description: Send me a mail description: Send{{ 'our' if person.type == 'legal' else 'my' }}a mail
icon: icon:
class: fa-solid fa-envelope class: fa-solid fa-envelope
url: https://mail.veen.world/ url: https://{{domains.mailu}}/
{% end %}
- name: Administration - name: Administration
icon: icon:
class: fas fa-building class: fas fa-building
children: children:
{% end %}
{% if "matomo" in group_names %}
- name: Matomo - name: Matomo
description: Analyze with Matomo description: Analyze with Matomo
icon: icon:
class: fa-solid fa-chart-simple class: fa-solid fa-chart-simple
url: https://matomo.veen.world/ url: https://{{domains.matomo}}/
{% end %}
{% if "phpmyadmin" in group_names %}
- name: phpMyAdmin - name: phpMyAdmin
description: Administrate MySQL and MariaDB databases description: Administrate MySQL and MariaDB databases
icon: icon:
class: fas fa-database class: fas fa-database
url: https://phpmyadmin.veen.world/ url: https://{{domains.phpmyadmin}}/
{% end %}
{% if "keycloak" in group_names %}
- name: Keycloak - name: Keycloak
description: Manage User via Keycloak description: Manage User via Keycloak
icon: icon:
class: fas fa-user-shield class: fas fa-user-shield
url: https://auth.veen.world/admin url: https://{{domains.keycloak}}/admin
{% end %}
{% if "ldap" in group_names %}
- name: LDAP - name: LDAP
description: Manage LDAP description: Manage LDAP
icon: icon:
class: fas fa-key class: fas fa-key
url: https://ldap.veen.world/ url: https://{{domains.ldap}}/
{% end %}
- name: Tools - name: Tools
icon: icon:
class: fas fa-tools class: fas fa-tools
children: children:
{% end %}
{% if "baserow" in group_names %}
- name: Baserow - name: Baserow
description: Organize with Baserow description: Organize with Baserow
icon: icon:
class: fa-solid fa-table class: fa-solid fa-table
url: https://baserow.veen.world/ url: https://{{domains.baserow}}/
{% end %}
{% if "yourls" in group_names %}
- name: Yourls - name: Yourls
description: Find {{ 'our' if person.type == 'legal' else 'my' }} curated links description: Create Shortlinks
icon: icon:
class: bi bi-link class: bi bi-link
url: https://s.veen.world/admin/ url: https://{{domains.yourls}}/admin/
{% end %}
{% if "nextcloud" in group_names %}
- name: Nextcloud - name: Nextcloud
description: Access {{ 'our' if person.type == 'legal' else 'my' }} cloud storage description: Access your cloud storage
icon: icon:
class: fa-solid fa-cloud class: fa-solid fa-cloud
url: https://cloud.veen.world/ url: https://{{domains.nextcloud}}/
{% end %}
- name: Imprint - name: Imprint
description: Check out the imprint information description: Check out the imprint information
icon: icon: