🚧 Still in active development.
🧑💻 Need to expose a variable? feel free to submit a PR.
Build beautiful marketing sites with SvelteKit - A lightweight, customizable component library for static marketing websites.
jsonLDnpm install sv-marketing
<BasicHero {...props} /><MediaHero {...props} /><TextAndMedia {...props} /><Features {...props} /><Pricing {...props} /><CallToAction {...props} /><Testimonials {...props} /><FrequentlyAskedQuestions {...props} /> (with SEO ✨)<Brands {...props} /><BlogListing {...props} /><BlogPost {...props} /><Layout {...props} /><Breadcrumbs {...props} /> (with SEO ✨)<PageSeo {...props} /> (with jsonLD ✨)<SectionContainer {...props} />, a wrapper for all sections (using a 12-column grid system)<SubSectionContainer {...props} />, a container for organizing content within sections with these props:children: Svelte components to render inside the containergridSize: Sets container width ('full' by default)gapSize: Controls spacing between items ('small' by default)align: Alignment of content ('center' by default)justifyUp: Controls vertical alignmentitemsCount: Specifies number of items in the container<SectionHeader {...props} />, a header for each section with these props:title: Title of the sectionsubtitle: Subtitle of the sectionalign: Alignment of content ('center' by default)justifyUp: Controls vertical alignmentitemsCount: Specifies number of items in the containerComponents use Svelte's runes mode and can be styled through CSS variables imported to your +layout.svelte file.
The following CSS variables can be customized:
--section-max-width: Sets the maximum width (1200px as fallback) for section containers to ensure consistent layout across different screen sizes.--color-primary: Sets the primary color (#00f as fallback) for buttons and other elements.--color-primary-alternate-text: Sets the text color for buttons and other elements that are styled (#fff as fallback).--color-primary-background: Sets the background color for primary sections (#eee as fallback).--color-secondary-background: Sets the background color for secondary sections (#aaa as fallback).--color-text: Sets the text color (#222 as fallback) for all text elements.Each component has specific class names to enable custom styling in your own CSS files. These classes follow a consistent pattern:
Section Container Classes
.section - Applied to all sections for generic styling.text-and-media, .hero, .features) for targeted stylingItem Classes
.text-and-media-item, .features-item) for styling individual items within a component.sub-section - Applied to sub-section containers within componentsText and Media Component
.text-and-media - Main container.text-and-media-item - Individual text/media pairs.text-and-media-media - Media within text/media pairsHero Components
.basic-hero - Basic hero section.media-hero - Hero with media sectionFeatures Component
.features - Main container.features-item - Individual feature items.feature-media - Media within feature itemsTestimonials Component
.testimonials - Main container.testimonials-item - Individual testimonial.testimonial-media - Avatar/media within testimonialsPricing Component
.pricing - Main container.pricing-item - Individual pricing plansFAQ Component
.faq - Main container.faq-item - Individual question/answer pairsCall-to-Action Component
.cta - Main containerBrands Component
.brands - Main container.brands-item - Individual brand itemsNavbar Component
.navbar - Main container.desktop-navbar - Desktop navigation.mobile-navbar - Mobile navigationFooter Component
.footer - Main container.footer-item - Individual footer sub sectionTo style all text and media sections:
.text-and-media {
background-color: #f9f9f9;
}
.text-and-media-item {
border-left: 3px solid var(--color-primary);
}
CSS for quick startp tags and blog postsAPI Submission)