🚧 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.
jsonLD
npm 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)