Zaufali nam
Zajmiemy się następującymi aspektami:
Research
•Branding
•UX/UI design
•Webdeveloping
•AI
•Communication design
•Product design
.stacking_card-container { position: sticky; top: 150px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; } /* Karta */ .stacking_card { display: flex; flex-direction: column; position: relative; transform-origin: top; transition: transform 0.1s ease-out;}
// Helper function to map a value from one range to another function map(value, in_min, in_max, out_min, out_max) { return ( out_min + ((value - in_min) * (out_max - out_min)) / (in_max - in_min) ); } // Get all card containers const cardContainers = document.querySelectorAll('.stacking_card-container'); // Total number of cards const numCards = cardContainers.length; // Convert NodeList to Array and store card elements const cardElements = Array.from(cardContainers).map( (cardContainer, index) => { const card = cardContainer.querySelector('.stacking_card'); const inner = card.querySelector('.inner'); // Set initial top position for stacking effect card.style.top = `calc(${index * 25}px)`; // Regular stacking card.style.zIndex = numCards - index; // Ensure proper stacking order return { cardContainer, card, inner, index, }; } ); // Initialize Lenis for smooth scrolling const lenis = new Lenis({ duration: 1.2, easing: (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t)), smoothWheel: true, smoothTouch: false, }); // Scroll handler function onScroll() { const scrollY = lenis.scroll; // Use Lenis scroll position const windowHeight = window.innerHeight; // Define base and final minScale values const baseMinScale = 0.8; // Adjust as needed const finalMinScale = 0.95; // Adjust as needed // Calculate scale increment per card const scaleIncrement = (finalMinScale - baseMinScale) / (numCards - 1); cardElements.forEach((cardElement, index) => { const { card, inner } = cardElement; // Define start and end points for scaling for each card const start = windowHeight * index + windowHeight * 1.1; // Start animation later const end = windowHeight * (index + 1); // Calculate progress for this card const cardProgress = (scrollY - start) / windowHeight; const clampedProgress = Math.max(0, Math.min(1, cardProgress)); // Calculate minScale for this card based on its index const minScale = baseMinScale + index * scaleIncrement; // Handle animation for all cards if (index === numCards - 1) { // Last card const lastCardStart = windowHeight * (numCards - 1); const progress = Math.max(0, Math.min(1, (scrollY - lastCardStart) / windowHeight)); card.style.zIndex = numCards + 1; // Bring to front card.style.transform = `translateY(${progress * -50}px) scale(1)`; // Pull up } else { // All other cards if (clampedProgress >= 0 && clampedProgress <= 1) { const scale = 1 - clampedProgress * (1 - minScale); card.style.transform = `scale(${scale})`; card.style.zIndex = numCards - index; // Maintain stacking } else if (scrollY < start) { card.style.transform = `scale(1)`; card.style.zIndex = numCards - index; // Reset stacking } else { card.style.transform = `scale(${minScale})`; } } }); } // Animation loop function raf(time) { lenis.raf(time); onScroll(); // Call your scroll handler requestAnimationFrame(raf); } requestAnimationFrame(raf);
Co o nas mówią
Tworzymy strony, które działają
Łączymy dane, myślenie produktowe i technologię frontend, aby tworzyć atrakcyjne i efektywne interfejsy.
UX/UI design
Zaprojektujemy aplikację mobilnej, sklep internetowy, portal, stronę wizytówkę.
- Tworzenie i rozwijanie systemów projektowania
- Analiza i testowanie
- Pełny cykl rozwoju produktu
Badania
Pomożemy dostosować produkt do potrzeb klientów i zwiększyć jego atrakcyjność rynkową.
- Zrozumieć potrzeby klientów
- Opisać kluczowe funkcje produktu
- Zorganizować informacje
3D projektowanie
Z naszymi 3D Twoje produkty i projekty zostaną precyzyjnie przedstawione, przyciągając uwagę i budując zaufanie klientów.
- Zwiększone zaangażowanie
- Łatwa nawiagacja po treści
- Unikalne wrażenia użytkowników
Branding
Pomożemy wyróżnić Twoją markę na rynku, budując silną tożsamość i przyciągając docelowych klientów
- Większa rozpoznawalność marki
- Zwiększona lojalność klientów
- Wyróżnienie na rynku
Naszym priorytetem jest terminowe i rzetelne wykonanie zadań. Tworzymy zespół ekspertów, którzy ciągle się doskonalą w swoim wachu.
Pełna transparentność
Wysyłamy raporty co poniedziałek abyś wiedział, co zostało zrobione i ile pieniędzy wydano

Important_Blog
Piszemy o podejściu produktowym, projektowaniu i badaniach.
Badania
7 typowych błędów przy tworzeniu stron WordPress i jak ich uniknąć
Unikaj typowych błędów podczas tworzenia stron WordPress, aby poprawić ich wydajność, bezpieczeństwo i użyteczność.
Badania
Co musisz wiedzieć, zanim zaczniesz tworzyć stronę WordPress?
Przygotowanie do tworzenia strony WordPress wymaga znajomości celów, hostingu, bezpieczeństwa i optymalizacji, aby przyciągnąć użytkowników.
Badania
Bricks Builder vs Elementor – które narzędzie WordPress wybrać w 2025 roku?
Porównanie Bricks Builder i Elementora w 2025 roku: który kreator WordPress wybrać w zależności od potrzeb użytkownika?
Deliver, Wordpress
Jak stworzyć profesjonalną stronę na WordPressie krok po kroku (pełny poradnik 2025)
Jak stworzyć profesjonalną stronę na WordPressie to pytanie, które nurtuje wiele osób w 2025 roku. Coraz więcej przedsiębiorców i pasjonatów internetowych zadaje sobie ten sam dylemat: jak skutecznie rozpocząć swoją przygodę z WordPressem? To platforma, która zyskała popularność ze względu na swoją elastyczność i łatwość obsługi. Niezależnie od tego, czy chcesz stworzyć blog, sklep internetowy,…