10 Commits

Author SHA1 Message Date
69e0abf844 Switch to version 1: modified src/app/styles/base.css 2026-04-18 17:00:41 +00:00
285797e44b Switch to version 1: modified src/app/page.tsx 2026-04-18 17:00:41 +00:00
3dda563544 Switch to version 1: modified src/app/layout.tsx 2026-04-18 17:00:40 +00:00
3afe42a610 Merge version_2 into main
Merge version_2 into main
2026-04-18 16:54:11 +00:00
c0b7ab0d38 Merge version_2 into main
Merge version_2 into main
2026-04-18 16:53:44 +00:00
bc2d93a41d Merge version_2 into main
Merge version_2 into main
2026-04-18 16:53:15 +00:00
cd8d525712 Merge version_2 into main
Merge version_2 into main
2026-04-18 16:48:21 +00:00
ec411ddf2b Merge version_2 into main
Merge version_2 into main
2026-04-18 16:47:53 +00:00
6cd5550275 Merge version_2 into main
Merge version_2 into main
2026-04-18 16:47:26 +00:00
75a0acde2e Merge version_2 into main
Merge version_2 into main
2026-04-18 16:47:00 +00:00
3 changed files with 190 additions and 91 deletions

View File

@@ -7,13 +7,12 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Cormorant_Garamond, DM_Sans } from "next/font/google";
import { DM_Sans } from "next/font/google";
export const metadata: Metadata = {
title: 'Prime Parturi | Barber Services in Tampere',
description: 'Premium barber services in the heart of Tampere. Professional craft, relaxed atmosphere.',
title: 'Way Bakery | Artisan Bakery in Kallio, Helsinki',
description: 'Small-batch artisan bakery in Kallio, Helsinki. Made with flour, time, and intention.',
openGraph: {
"title": "Way Bakery",
"description": "Small-batch artisan bakery in Kallio, Helsinki.",
@@ -21,10 +20,8 @@ export const metadata: Metadata = {
},
};
const dmSans = DM_Sans({
variable: "--font-dm-sans", subsets: ["latin"],
});
const cormorantGaramond = Cormorant_Garamond({ variable: "--font-cormorant", subsets: ["latin"], weight: ["300", "400", "600", "700"] });
const dmSans = DM_Sans({ variable: "--font-dm-sans", subsets: ["latin"] });
export default function RootLayout({
children,
@@ -34,7 +31,7 @@ export default function RootLayout({
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body className={`${dmSans.variable} antialiased`}>
<body className={`${cormorantGaramond.variable} ${dmSans.variable} antialiased`}>
<Tag />
{children}
<script

View File

@@ -2,101 +2,203 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FeatureCardTwelve from '@/components/sections/feature/FeatureCardTwelve';
import HeroSplitDualMedia from '@/components/sections/hero/HeroSplitDualMedia';
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FeatureCardTwentySeven from '@/components/sections/feature/FeatureCardTwentySeven';
import HeroSplitTestimonial from '@/components/sections/hero/HeroSplitTestimonial';
import MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import ProductCardOne from '@/components/sections/product/ProductCardOne';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import TestimonialCardThirteen from '@/components/sections/testimonial/TestimonialCardThirteen';
export default function LandingPage() {
return (
<ThemeProvider
defaultButtonVariant="hover-magnetic"
defaultTextAnimation="reveal-blur"
defaultButtonVariant="text-shift"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="medium"
sizing="mediumLargeSizeLargeTitles"
background="none"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="circleGradient"
cardStyle="solid"
primaryButtonStyle="flat"
secondaryButtonStyle="solid"
headingFontWeight="bold"
primaryButtonStyle="shadow"
secondaryButtonStyle="glass"
headingFontWeight="extrabold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "hero" },
{ name: "Why Prime", id: "why-prime" },
{ name: "Services", id: "services" },
{ name: "Find Us", id: "find-us" }
]}
brandName="Prime Parturi"
/>
</div>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{
name: "Home", id: "hero"},
{
name: "Bakery", id: "bakery"},
{
name: "Menu", id: "menu"},
{
name: "Contact", id: "find-us"},
]}
brandName="Way Bakery"
/>
</div>
<div id="hero" data-section="hero" style={{ backgroundColor: "#001a0a" }}>
<HeroSplitDualMedia
title="Fresh cut, good vibes"
description="Premium barber services in the heart of Tampere. Professional craft, relaxed atmosphere."
background={{ variant: "plain" }}
tag="Barber Services"
mediaItems={[
{ imageSrc: "https://img.b2bpic.net/free-photo/barber-shop-concept-with-man-getting-haircut_23-2148722916.jpg", imageAlt: "Barber shop interior" },
{ imageSrc: "https://img.b2bpic.net/free-photo/barber-tools-table_23-2148722926.jpg", imageAlt: "Barber tools" }
]}
rating={5}
ratingText="5-star reviews in Tampere"
className="text-white"
/>
</div>
<div id="hero" data-section="hero">
<HeroSplitTestimonial
useInvertedBackground={false}
background={{
variant: "plain"}}
title="Where bread is an art form and every visit is a ritual."
description="Small-batch bakery. Kallio, Helsinki."
testimonials={[
{
name: "Small batch", handle: "Artisan", testimonial: "Made with flour, time, and intention.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/assortment-bread-loaves-food-photography-recipe-ideas_53876-144949.jpg"},
{
name: "Local Regular", handle: "Bakery Lover", testimonial: "The best crust in the city, hands down.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg"},
{
name: "Food Critic", handle: "Journalist", testimonial: "A quiet, masterful approach to baking.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/side-view-seeded-cob-with-sliced-white-bread-maroon-background-with-copy-space_141793-5623.jpg"},
{
name: "Coffee Enthusiast", handle: "Barista", testimonial: "Pairing their loaf with morning coffee is my daily ritual.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/front-view-sliced-bread-with-brown-sugar-cubes_23-2148695488.jpg"},
{
name: "Visitor", handle: "Tourist", testimonial: "Worth the flight from London for this sourdough.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/delicious-bread-towel_23-2148544723.jpg?_wi=1"},
]}
buttons={[
{
text: "See this week's menu →", href: "#menu"},
]}
imageSrc="http://img.b2bpic.net/free-photo/delicious-bread-towel_23-2148544723.jpg?_wi=2"
mediaAnimation="opacity"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/delicious-bread-towel_23-2148544723.jpg", alt: "Small batch"},
{
src: "http://img.b2bpic.net/free-photo/close-up-focus-two-freshly-baked-diet-healthy-breads-charcoal-rye-with-figs-isolated-black-presented-rustic-wooden-table_346278-808.jpg", alt: "Local Regular"},
{
src: "http://img.b2bpic.net/free-photo/top-view-delicious-sliced-pie-with-red-berries-dark-table-cake-sweets-pie_140725-73354.jpg", alt: "Food Critic"},
{
src: "http://img.b2bpic.net/free-photo/sandwich-walnuts_23-2147717717.jpg", alt: "Coffee Enthusiast"},
{
src: "http://img.b2bpic.net/free-photo/top-view-delicious-bread-table_23-2149234900.jpg", alt: "Visitor"},
]}
marqueeItems={[
{
type: "text", text: "KALLIO"},
{
type: "text", text: "ARTISAN"},
{
type: "text", text: "SOURDOUGH"},
{
type: "text", text: "SEASONAL"},
{
type: "text", text: "RITUAL"},
]}
/>
</div>
<div id="why-prime" data-section="why-prime" style={{ backgroundColor: "#f9f9f9" }}>
<FeatureCardTwelve
title="Why Prime"
description="We combine traditional techniques with a modern approach to grooming."
features={[
{ id: "1", label: "01", title: "Expert Barbers", items: ["Years of experience in professional styling"] },
{ id: "2", label: "02", title: "Premium Quality", items: ["Only the best products for your hair and skin"] },
{ id: "3", label: "03", title: "Relaxed Vibe", items: ["A sanctuary for your morning ritual"] },
{ id: "4", label: "04", title: "Local Roots", items: ["Proudly serving Tampere locals"] }
]}
animationType="slide-up"
textboxLayout="split"
useInvertedBackground={false}
/>
</div>
<div id="bakery" data-section="bakery">
<MediaAbout
useInvertedBackground={false}
title="The Bakery"
description="Way Bakery was born from a simple belief: that good bread takes time. We bake in small batches, with seasonal ingredients, in the neighbourhood we love. Kallio keeps us honest. \n\nOur kitchen runs on instinct and tradition, focusing on the crumb, the crust, and the quiet joy of a perfectly baked loaf. \n\nOpen TuesdaySunday, morning until sold out."
imageSrc="http://img.b2bpic.net/free-photo/close-up-focus-two-freshly-baked-diet-healthy-breads-charcoal-rye-with-figs-isolated-black-presented-rustic-wooden-table_346278-808.jpg?_wi=1"
/>
</div>
<div id="services" data-section="services" style={{ backgroundColor: "#f9f9f9" }}>
<ProductCardOne
title="Minimal Services"
description="Clear pricing for high-quality cuts."
gridVariant="four-items-2x2-equal-grid"
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
products={[
{ id: "1", name: "Classic Cut", price: "35€", imageSrc: "https://img.b2bpic.net/free-photo/man-getting-haircut-barbershop_23-2148722934.jpg" },
{ id: "2", name: "Beard Trim", price: "20€", imageSrc: "https://img.b2bpic.net/free-photo/barber-trimming-beard_23-2148722940.jpg" },
{ id: "3", name: "Full Grooming", price: "50€", imageSrc: "https://img.b2bpic.net/free-photo/barber-cutting-hair_23-2148722936.jpg" },
{ id: "4", name: "Kids Cut", price: "25€", imageSrc: "https://img.b2bpic.net/free-photo/barber-shop-interior_23-2148722912.jpg" }
]}
/>
</div>
<div id="menu" data-section="menu">
<ProductCardTwo
animationType="slide-up"
textboxLayout="split-description"
gridVariant="four-items-2x2-equal-grid"
useInvertedBackground={false}
description="Our selection of handcrafted artisan goods, baked fresh daily in our small-batch kitchen."
products={[
{
id: "p1", brand: "Pastry", name: "Laskiaispulla", price: "6€", rating: 5,
reviewCount: "Seasonal", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-sliced-pie-with-red-berries-dark-table-cake-sweets-pie_140725-73354.jpg?_wi=1"},
{
id: "p2", brand: "Pastry", name: "Almond-marzipan croissant", price: "7€", rating: 5,
reviewCount: "Classic", imageSrc: "http://img.b2bpic.net/free-photo/sandwich-walnuts_23-2147717717.jpg?_wi=1"},
{
id: "p3", brand: "Bread", name: "Sourdough loaf", price: "9€", rating: 5,
reviewCount: "Daily", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-bread-table_23-2149234900.jpg"},
{
id: "p4", brand: "Food", name: "Brunch plate", price: "19€", rating: 5,
reviewCount: "Signature", imageSrc: "http://img.b2bpic.net/free-photo/top-view-breads-as-croissant-seeded-brown-cob-bread-slices-basket-cloth-plate-grape-nectacot-pluot-wooden-background_141793-27673.jpg"},
]}
title="What we make"
/>
</div>
<div id="find-us" data-section="find-us" style={{ backgroundColor: "#001a0a" }}>
<ContactSplitForm
title="Find Us"
description="Visit us in Tampere. Open daily by appointment."
inputs={[
{ name: "name", type: "text", placeholder: "Your Name" },
{ name: "email", type: "email", placeholder: "Your Email" }
]}
useInvertedBackground={false}
className="text-white"
/>
</div>
<div id="brunch" data-section="brunch">
<FeatureCardTwentySeven
animationType="slide-up"
textboxLayout="split-actions"
useInvertedBackground={false}
features={[
{
id: "b1", title: "Freshness", descriptions: [
"Local produce"],
imageSrc: "http://img.b2bpic.net/free-photo/delicious-crispy-toasts-with-fried-egg-jam_114579-60122.jpg"},
{
id: "b2", title: "Tradition", descriptions: [
"Old school craft"],
imageSrc: "http://img.b2bpic.net/free-photo/fried-eggs-jam-cheese-individually-sliced-bread-board-marble-surface_114579-50096.jpg"},
{
id: "b3", title: "Ritual", descriptions: [
"Weekend slow life"],
imageSrc: "http://img.b2bpic.net/free-photo/jam-bread-juice_23-2147693834.jpg"},
]}
title="Brunch, done properly."
description="Saturdays and Sundays only. A curated plate — fresh bread, soft-boiled egg, seasonal jam, cold cuts or a vegetarian option. Reserve your table."
buttons={[
{
text: "Reserve your table", href: "mailto:reserve@waybakery.fi"},
]}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardThirteen
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
description="Hear what our regular customers say about our artisan sourdough and morning rituals."
testimonials={[
{
id: "1", name: "Regular", handle: "Customer", testimonial: "The best laskiaispullat in the city.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/bakery_23-2148011572.jpg", imageAlt: "Bakery "},
{
id: "2", name: "Regular", handle: "Customer", testimonial: "A little piece of southern Europe in Kallio.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/delicious-bread-towel_23-2148544723.jpg?_wi=3", imageAlt: "Bakery "},
{
id: "3", name: "Regular", handle: "Customer", testimonial: "The bread is always perfect. Worth the trip.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/close-up-focus-two-freshly-baked-diet-healthy-breads-charcoal-rye-with-figs-isolated-black-presented-rustic-wooden-table_346278-808.jpg?_wi=2", imageAlt: "Bakery "},
{
id: "4", name: "Regular", handle: "Customer", testimonial: "The quality here is unmatched.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-sliced-pie-with-red-berries-dark-table-cake-sweets-pie_140725-73354.jpg?_wi=2", imageAlt: "Bakery "},
{
id: "5", name: "Regular", handle: "Customer", testimonial: "True artisan work.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/sandwich-walnuts_23-2147717717.jpg?_wi=2", imageAlt: "Bakery "},
]}
showRating={false}
title="From Our Regulars"
/>
</div>
<div id="find-us" data-section="find-us">
<ContactCenter
useInvertedBackground={false}
background={{
variant: "plain"}}
tag="Visit Us"
title="Find Us"
description="Kallio, Helsinki \nTueSun 8:0015:00 or until sold out \nInstagram: @waybakery \n\nWe're a small space — come early."
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -24,5 +24,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-dm-sans), serif;
font-family: var(--font-cormorant), serif;
}