Files
landing_page/qdrant-landing/themes/qdrant-2024/layouts/partials/home/performance-by-design.html
T
trean 305aea6b9a New homepage (#2172)
* two new sections

* enterprise capabilities and enterprise ready sections

* sections: engineered-for-builders and performance-by-design

* sections: cta-banner, integrations-logos, solutions

# Conflicts:
#	qdrant-landing/themes/qdrant-2024/assets/css/partials/_cta-banner.scss
#	qdrant-landing/themes/qdrant-2024/layouts/partials/cta-banner.html

* remove old sections from index.html

* wip: home page

* reuse links, carousel width

* globe and globe lights

* globe lights

* finalyzing the globe, add customers icons

* new icons set + svg partial update

* upd icons in the enterprise-ready section

* lines background

* globe lights as gradient and svg

* fix carousel responsiveness

* fix cut box shadow

* accordion slider responsiveness

* new hero

* hero customers

* some hero responsiveness

* customers layout fix

* cards responsiveness

* fixes

* remove floating github link

* hero - bigger screens

* refactor css

* more hero responsiveness

* fix

* hero parallax

* replace svg as img with embedded svg logos

* fix marquee

* slider's tabs responsiveness

* remove horizontal scroll on the mobile

* moved images

* images optim

* moved paths to markdown

* svg -> png

* some refactoring and clean up

* moved scss

* svg to png

* more images optimization and cleaning

* optimizing png

* fix globe cards height

* add reveal effect

* improve reveal effect

* fix for the hero animation in Safari

* removed type:page preventing use-cases page from rendering with newer version of Hugo

* restore static/img/home/reranking.webp

* remove unused files

* formatting

* hero and reveal fixes

* fixes

* update cta banner

* links and content fix

* fixes: content, links, web-ui illustration

* canva testimonial

* upd link

* fix

* replace links

* slider links
2026-03-11 23:27:37 +01:00

111 lines
4.1 KiB
HTML

{{ with (.Site.GetPage "/headless/main/performance-by-design") }}
<section class="performance-by-design">
<div class="container">
<div class="performance-by-design__header">
<span class="performance-by-design__tagline">{{ .Params.tagline }}</span>
<h2 class="performance-by-design__title">{{ .Params.title }}</h2>
<p class="performance-by-design__subtitle">{{ .Params.subtitle }}</p>
</div>
{{/* Slider layout: visible only below md */}}
<div class="performance-by-design__slider">
<div class="performance-by-design__content">
<div class="performance-by-design__features">
{{ range $index, $feature := .Params.features }}
<div class="performance-by-design__feature{{ if eq $index 0 }} performance-by-design__feature--active{{ end }}" data-feature-index="{{ $index }}">
<h3 class="performance-by-design__feature-title">{{ $feature.title }}</h3>
<div class="performance-by-design__feature-body">
<p class="performance-by-design__feature-description">{{ $feature.description }}</p>
</div>
</div>
{{ end }}
</div>
<div class="performance-by-design__visual">
{{ range $index, $feature := .Params.features }}
<div class="performance-by-design__image{{ if eq $index 0 }} performance-by-design__image--active{{ end }}" data-image-index="{{ $index }}">
{{ if $feature.image }}
{{ partial "picture" (dict "src" $feature.image.src "alt" $feature.image.alt "loading" "lazy" "decoding" "async") }}
{{ end }}
</div>
{{ end }}
</div>
</div>
</div>
{{/* Card grid: visible from md up, 2 cards per row */}}
<div class="performance-by-design__grid">
{{ range .Params.features }}
<div class="performance-by-design__card">
{{ if .image }}
<div class="performance-by-design__card-visual">
{{ partial "picture" (dict "src" .image.src "alt" .image.alt "class" "performance-by-design__card-image" "loading" "lazy" "decoding" "async") }}
</div>
{{ end }}
<div class="performance-by-design__card-content">
<h3 class="performance-by-design__card-title">{{ .title }}</h3>
<p class="performance-by-design__card-description">{{ .description }}</p>
</div>
</div>
{{ end }}
</div>
</div>
</section>
<script>
(function () {
var section = document.querySelector('.performance-by-design');
if (!section) return;
var features = section.querySelectorAll('.performance-by-design__feature');
var images = section.querySelectorAll('.performance-by-design__image');
if (!features.length) return;
var currentIndex = 0;
var autoplayInterval = null;
var AUTOPLAY_DELAY = 5000;
function goToFeature(index) {
if (index < 0 || index >= features.length) return;
features.forEach(function (f) {
f.classList.remove('performance-by-design__feature--active');
});
images.forEach(function (img) {
img.classList.remove('performance-by-design__image--active');
});
features[index].classList.add('performance-by-design__feature--active');
if (images[index]) images[index].classList.add('performance-by-design__image--active');
currentIndex = index;
}
function nextFeature() {
var next = (currentIndex + 1) % features.length;
goToFeature(next);
}
function startAutoplay() {
stopAutoplay();
autoplayInterval = setInterval(nextFeature, AUTOPLAY_DELAY);
}
function stopAutoplay() {
if (autoplayInterval) {
clearInterval(autoplayInterval);
autoplayInterval = null;
}
}
features.forEach(function (feature, i) {
feature.addEventListener('click', function () {
goToFeature(i);
startAutoplay();
});
});
startAutoplay();
})();
</script>
{{ end }}