habemus new tagline
This commit is contained in:
parent
71d4962d18
commit
d680c8b093
6 changed files with 47 additions and 47 deletions
Binary file not shown.
|
Before Width: | Height: | Size: 316 KiB After Width: | Height: | Size: 316 KiB |
|
|
@ -35,15 +35,15 @@
|
||||||
<div class="bg-primary text-white py-2 text-center">
|
<div class="bg-primary text-white py-2 text-center">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<a href="https://www.vshn.ch/en/blog/vshn-launches-servala-open-cloud-native-service-hub/" class="text-white text-decoration-none" target="_blank">
|
<a href="https://www.vshn.ch/en/blog/vshn-launches-servala-open-cloud-native-service-hub/" class="text-white text-decoration-none" target="_blank">
|
||||||
VSHN launches Servala – Open Cloud Native Service Hub
|
VSHN launches Servala – The Sovereign App Store
|
||||||
</a>
|
</a>
|
||||||
<i class="bi bi-box-arrow-up-right"></i>
|
<i class="bi bi-box-arrow-up-right"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<header class="site-header position-relative"
|
<header class="site-header position-relative"
|
||||||
x-data="{
|
x-data="{
|
||||||
isMenuOpen: false,
|
isMenuOpen: false,
|
||||||
isAtTop: true,
|
isAtTop: true,
|
||||||
toggleMenu() {
|
toggleMenu() {
|
||||||
this.isMenuOpen = !this.isMenuOpen;
|
this.isMenuOpen = !this.isMenuOpen;
|
||||||
|
|
@ -75,8 +75,8 @@
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
">
|
">
|
||||||
<div class="header-nav"
|
<div class="header-nav"
|
||||||
:class="isAtTop ? 'header-nav--top' : 'header-nav--fixed'"
|
:class="isAtTop ? 'header-nav--top' : 'header-nav--fixed'"
|
||||||
id="headerNav">
|
id="headerNav">
|
||||||
<div class="container-xl mx-auto px-3 px-lg-0 position-relative">
|
<div class="container-xl mx-auto px-3 px-lg-0 position-relative">
|
||||||
<div class="nav__wrapper d-flex justify-content-between align-items-center">
|
<div class="nav__wrapper d-flex justify-content-between align-items-center">
|
||||||
|
|
@ -85,8 +85,8 @@
|
||||||
<img src="{% static "img/header-logo.png" %}" alt="Servala Logo" width="191" height="43">
|
<img src="{% static "img/header-logo.png" %}" alt="Servala Logo" width="191" height="43">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="nav__menu"
|
<div class="nav__menu"
|
||||||
:class="isMenuOpen ? 'nav__menu-active' : 'nav__menu-hidden'"
|
:class="isMenuOpen ? 'nav__menu-active' : 'nav__menu-hidden'"
|
||||||
id="navMenu">
|
id="navMenu">
|
||||||
<nav class="navbar d-lg-flex justify-content-lg-end align-items-lg-center">
|
<nav class="navbar d-lg-flex justify-content-lg-end align-items-lg-center">
|
||||||
<ul class="navbar__menu menu mr-lg-27">
|
<ul class="navbar__menu menu mr-lg-27">
|
||||||
|
|
@ -103,21 +103,21 @@
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
<div class="nav__toggle">
|
<div class="nav__toggle">
|
||||||
<button @click="toggleMenu()"
|
<button @click="toggleMenu()"
|
||||||
name="menu"
|
name="menu"
|
||||||
class="nav__button"
|
class="nav__button"
|
||||||
role="button"
|
role="button"
|
||||||
:aria-expanded="isMenuOpen.toString()"
|
:aria-expanded="isMenuOpen.toString()"
|
||||||
aria-controls="navMenu">
|
aria-controls="navMenu">
|
||||||
<svg class="nav__button-svg" width="22" height="24">
|
<svg class="nav__button-svg" width="22" height="24">
|
||||||
<line class="button-svg__line"
|
<line class="button-svg__line"
|
||||||
:class="isMenuOpen ? 'svg-line-top' : ''"
|
:class="isMenuOpen ? 'svg-line-top' : ''"
|
||||||
x1="0" x2="22" y1="6" y2="6"></line>
|
x1="0" x2="22" y1="6" y2="6"></line>
|
||||||
<line class="button-svg__line"
|
<line class="button-svg__line"
|
||||||
:class="isMenuOpen ? 'svg-line-center' : ''"
|
:class="isMenuOpen ? 'svg-line-center' : ''"
|
||||||
x1="0" x2="22" y1="12" y2="12"></line>
|
x1="0" x2="22" y1="12" y2="12"></line>
|
||||||
<line class="button-svg__line"
|
<line class="button-svg__line"
|
||||||
:class="isMenuOpen ? 'svg-line-bottom' : ''"
|
:class="isMenuOpen ? 'svg-line-bottom' : ''"
|
||||||
x1="0" x2="22" y1="18" y2="18"></line>
|
x1="0" x2="22" y1="18" y2="18"></line>
|
||||||
</svg>
|
</svg>
|
||||||
</button>
|
</button>
|
||||||
|
|
@ -126,7 +126,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|
@ -180,7 +180,7 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="fs-14 fw-semibold">
|
<div class="fs-14 fw-semibold">
|
||||||
<p>Unlock the Power of Cloud Native Applications</p>
|
<p>Unlock the Power of Sovereign Managed Applications</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex align-items-center space-x-20">
|
<div class="d-flex align-items-center space-x-20">
|
||||||
<a href="https://www.linkedin.com/company/servala/">
|
<a href="https://www.linkedin.com/company/servala/">
|
||||||
|
|
@ -192,7 +192,7 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-lg-2 mb-60 mb-lg-0">
|
<div class="col-12 col-lg-2 mb-60 mb-lg-0">
|
||||||
<div class="space-y-20">
|
<div class="space-y-20">
|
||||||
<h4 class="fs-base fw-semibold">Contents</h4>
|
<h4 class="fs-base fw-semibold">Contents</h4>
|
||||||
|
|
@ -206,7 +206,7 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-lg-2 mb-60 mb-lg-0">
|
<div class="col-12 col-lg-2 mb-60 mb-lg-0">
|
||||||
<div class="space-y-20">
|
<div class="space-y-20">
|
||||||
<h4 class="fs-base fw-semibold">Company</h4>
|
<h4 class="fs-base fw-semibold">Company</h4>
|
||||||
|
|
@ -218,7 +218,7 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-lg-4">
|
<div class="col-12 col-lg-4">
|
||||||
<div class="space-y-20 w-lg-90">
|
<div class="space-y-20 w-lg-90">
|
||||||
<h4 class="fs-base fw-semibold">Contact</h4>
|
<h4 class="fs-base fw-semibold">Contact</h4>
|
||||||
|
|
@ -275,7 +275,7 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
{% load static %}
|
{% load static %}
|
||||||
{% load contact_tags %}
|
{% load contact_tags %}
|
||||||
|
|
||||||
{% block title %}About Open Cloud Native Services Hub{% endblock %}
|
{% block title %}About The Sovereign App Store{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<section class="section bg-primary-subtle">
|
<section class="section bg-primary-subtle">
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<header class="section-primary__header text-center">
|
<header class="section-primary__header text-center">
|
||||||
<h1 class="section-h1 fs-40 fs-lg-64 mb-24">About Servala</h1>
|
<h1 class="section-h1 fs-40 fs-lg-64 mb-24">About Servala</h1>
|
||||||
<div class="text-gray-300 w-lg-37 mx-auto">
|
<div class="text-gray-300 w-lg-37 mx-auto">
|
||||||
<p class="mb-0">Open Cloud Native Service Hub. Unlock the Power of Cloud Native Applications.</p>
|
<p class="mb-0">The Sovereign App Store. Unlock the Power of Sovereign Managed Applications.</p>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -238,7 +238,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="w-lg-30">
|
<div class="w-lg-30">
|
||||||
<div class="page-header__image-wrapper">
|
<div class="page-header__image-wrapper">
|
||||||
<img class="page-header__image" src="{% static "img/sir-vala-text.png" %}" alt="Cartoon serval cat named Sir Vala with blue eyes and a happy expression. It's the mascot of Servala - Open Cloud Native Service Hub" title="Sir Vala - Mascot of Servala">
|
<img class="page-header__image" src="{% static "img/sir-vala-text.png" %}" alt="Cartoon serval cat named Sir Vala with blue eyes and a happy expression. It's the mascot of Servala - The Sovereign App Store" title="Sir Vala - Mascot of Servala">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -251,4 +251,4 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
{% load static %}
|
{% load static %}
|
||||||
|
|
||||||
{% block title %}Open Cloud Native Services Hub{% endblock %}
|
{% block title %}The Sovereign App Store{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<section class="section section-hero bg-primary-subtle">
|
<section class="section section-hero bg-primary-subtle">
|
||||||
|
|
@ -9,9 +9,9 @@
|
||||||
<div class="section-hero-mask"></div>
|
<div class="section-hero-mask"></div>
|
||||||
<div class="px-3 px-lg-0 pt-80 pb-120 position-relative">
|
<div class="px-3 px-lg-0 pt-80 pb-120 position-relative">
|
||||||
<header class="section-hero__header">
|
<header class="section-hero__header">
|
||||||
<h1 class="section-h1 fs-40 fs-lg-64">Servala - Open Cloud Native Service Hub</h1>
|
<h1 class="section-h1 fs-40 fs-lg-64">Sovereign App Store</h1>
|
||||||
<div class="section-hero__desc">
|
<div class="section-hero__desc">
|
||||||
<p>Unlock the Power of Cloud Native Applications.</p>
|
<p>Unlock the Power of Sovereign Managed Applications.</p>
|
||||||
<p>Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.</p>
|
<p>Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
{% for service in featured_services %}
|
{% for service in featured_services %}
|
||||||
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
||||||
<div class="card h-100 d-flex flex-column clickable-card"
|
<div class="card h-100 d-flex flex-column clickable-card"
|
||||||
onclick="cardClicked(event, '{{ service.get_absolute_url }}')">
|
onclick="cardClicked(event, '{{ service.get_absolute_url }}')">
|
||||||
<div class="card__content d-flex flex-column flex-grow-1">
|
<div class="card__content d-flex flex-column flex-grow-1">
|
||||||
<div class="card__header">
|
<div class="card__header">
|
||||||
|
|
@ -49,8 +49,8 @@
|
||||||
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
||||||
<a href="{{ service.get_absolute_url }}" class="clickable-link">
|
<a href="{{ service.get_absolute_url }}" class="clickable-link">
|
||||||
{% if service.get_logo %}
|
{% if service.get_logo %}
|
||||||
<img src="{{ service.get_logo.url }}"
|
<img src="{{ service.get_logo.url }}"
|
||||||
alt="{{ service.name }}"
|
alt="{{ service.name }}"
|
||||||
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="text-muted" style="height: 100px; width: 250px; display: flex; align-items: center; justify-content: center; border: 1px solid #dee2e6; border-radius: 0.375rem;">
|
<div class="text-muted" style="height: 100px; width: 250px; display: flex; align-items: center; justify-content: center; border: 1px solid #dee2e6; border-radius: 0.375rem;">
|
||||||
|
|
@ -104,7 +104,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
{% for provider in featured_providers %}
|
{% for provider in featured_providers %}
|
||||||
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
||||||
<div class="card h-100 d-flex flex-column clickable-card"
|
<div class="card h-100 d-flex flex-column clickable-card"
|
||||||
onclick="cardClicked(event, '{{ provider.get_absolute_url }}')">
|
onclick="cardClicked(event, '{{ provider.get_absolute_url }}')">
|
||||||
<div class="card__content d-flex flex-column flex-grow-1">
|
<div class="card__content d-flex flex-column flex-grow-1">
|
||||||
<div class="card__header">
|
<div class="card__header">
|
||||||
|
|
@ -112,8 +112,8 @@
|
||||||
{% if provider.get_logo %}
|
{% if provider.get_logo %}
|
||||||
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
||||||
<a href="{{ provider.get_absolute_url }}" class="clickable-link">
|
<a href="{{ provider.get_absolute_url }}" class="clickable-link">
|
||||||
<img src="{{ provider.get_logo.url }}"
|
<img src="{{ provider.get_logo.url }}"
|
||||||
alt="{{ provider.name }}"
|
alt="{{ provider.name }}"
|
||||||
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -160,7 +160,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
{% for partner in featured_partners %}
|
{% for partner in featured_partners %}
|
||||||
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
<div class="col-12 col-md-6 col-lg-3 mb-20 mb-lg-0">
|
||||||
<div class="card h-100 d-flex flex-column clickable-card"
|
<div class="card h-100 d-flex flex-column clickable-card"
|
||||||
onclick="cardClicked(event, '{{ partner.get_absolute_url }}')">
|
onclick="cardClicked(event, '{{ partner.get_absolute_url }}')">
|
||||||
<div class="card__content d-flex flex-column flex-grow-1">
|
<div class="card__content d-flex flex-column flex-grow-1">
|
||||||
<div class="card__header">
|
<div class="card__header">
|
||||||
|
|
@ -168,8 +168,8 @@
|
||||||
{% if partner.get_logo %}
|
{% if partner.get_logo %}
|
||||||
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
<div class="me-3 d-flex align-items-center" style="height: 100%;">
|
||||||
<a href="{{ partner.get_absolute_url }}" class="clickable-link">
|
<a href="{{ partner.get_absolute_url }}" class="clickable-link">
|
||||||
<img src="{{ partner.get_logo.url }}"
|
<img src="{{ partner.get_logo.url }}"
|
||||||
alt="{{ partner.name }}"
|
alt="{{ partner.name }}"
|
||||||
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
style="max-height: 100px; max-width: 250px; object-fit: contain;">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -208,7 +208,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-lg-8">
|
<div class="col-12 col-lg-8">
|
||||||
<header class="section-primary__header">
|
<header class="section-primary__header">
|
||||||
<h2 class="section-h1 fs-40 fs-lg-60">Servala - Open Cloud Native Service Hub</h2>
|
<h2 class="section-h1 fs-40 fs-lg-60">Servala - The Sovereign App Store</h2>
|
||||||
<div class="section-primary__desc">
|
<div class="section-primary__desc">
|
||||||
<p>Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.</p>
|
<p>Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.</p>
|
||||||
<p>Discover:</p>
|
<p>Discover:</p>
|
||||||
|
|
@ -257,4 +257,4 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,7 @@ def json_ld_structured_data(context):
|
||||||
data = {
|
data = {
|
||||||
"@context": "https://schema.org",
|
"@context": "https://schema.org",
|
||||||
"@type": "WebSite",
|
"@type": "WebSite",
|
||||||
"name": "Servala - Open Cloud Native Service Hub",
|
"name": "Servala - The Sovereign App Store",
|
||||||
"url": base_url,
|
"url": base_url,
|
||||||
}
|
}
|
||||||
json_ld = json.dumps(data, indent=2)
|
json_ld = json.dumps(data, indent=2)
|
||||||
|
|
@ -65,7 +65,7 @@ def json_ld_structured_data(context):
|
||||||
{
|
{
|
||||||
"@context": "https://schema.org",
|
"@context": "https://schema.org",
|
||||||
"@type": "WebSite",
|
"@type": "WebSite",
|
||||||
"name": "Servala - Open Cloud Native Service Hub",
|
"name": "Servala - The Sovereign App Store",
|
||||||
"url": base_url,
|
"url": base_url,
|
||||||
"description": "Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.",
|
"description": "Servala connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.",
|
||||||
"potentialAction": {
|
"potentialAction": {
|
||||||
|
|
|
||||||
|
|
@ -190,7 +190,7 @@ def generate_exoscale_marketplace_yaml(offering):
|
||||||
yaml_key: {
|
yaml_key: {
|
||||||
"page_class": "tmpl-marketplace-product",
|
"page_class": "tmpl-marketplace-product",
|
||||||
"html_title": title,
|
"html_title": title,
|
||||||
"meta_desc": f"Managed {offering.service.name} by Servala - a product by VSHN. Servala is the Open Cloud Native Service Hub. It connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.",
|
"meta_desc": f"Managed {offering.service.name} by Servala - a product by VSHN. Servala is the The Sovereign App Store. It connects businesses, developers, and cloud service providers on one unique hub with secure, scalable, and easy-to-use cloud-native services.",
|
||||||
"page_header_title": title,
|
"page_header_title": title,
|
||||||
"provider_key": "vshn",
|
"provider_key": "vshn",
|
||||||
"slug": f"{offering.service.slug}-by-servala",
|
"slug": f"{offering.service.slug}-by-servala",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue