1.5.2 • Published 7 months ago

@really-headless/sv-marketing v1.5.2

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

SV-Marketing

🚧 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.

Features

  • 🚀 Built for SvelteKit
  • 🎨 Highly customizable through CSS variables
  • 📱 Fully responsive components
  • ⚡ Lightweight and fast
  • 🔧 Easy to integrate
  • 📈 SEO-friendly with the right semantic components and jsonLD

Installation

npm install sv-marketing

Available Components

Content Sections

  • Hero
    • Basic Hero <BasicHero {...props} />
    • Hero with Media <MediaHero {...props} />
  • Text & Media <TextAndMedia {...props} />
  • Features Grid <Features {...props} />
  • Pricing Table <Pricing {...props} />
  • Call-to-Action (CTA) <CallToAction {...props} />
  • Testimonials Grid <Testimonials {...props} />
  • FAQ Accordion <FrequentlyAskedQuestions {...props} /> (with SEO ✨)
  • Brand Showcase List <Brands {...props} />
  • Blog List View <BlogListing {...props} />
  • Blog Post View <BlogPost {...props} />

Navigation & Structure

  • Layout <Layout {...props} />
  • Breadcrumbs <Breadcrumbs {...props} /> (with SEO ✨)
  • Page SEO <PageSeo {...props} /> (with jsonLD ✨)

Compose your own

  • SectionContainer <SectionContainer {...props} />, a wrapper for all sections (using a 12-column grid system)
  • SubSectionContainer <SubSectionContainer {...props} />, a container for organizing content within sections with these props:
    • children: Svelte components to render inside the container
    • gridSize: Sets container width ('full' by default)
    • gapSize: Controls spacing between items ('small' by default)
    • align: Alignment of content ('center' by default)
    • justifyUp: Controls vertical alignment
    • itemsCount: Specifies number of items in the container
  • SectionHeader <SectionHeader {...props} />, a header for each section with these props:
    • title: Title of the section
    • subtitle: Subtitle of the section
    • align: Alignment of content ('center' by default)
    • justifyUp: Controls vertical alignment
    • itemsCount: Specifies number of items in the container

Usage

Components use Svelte's runes mode and can be styled through CSS variables imported to your +layout.svelte file.

CSS Variables

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.

CSS Classes

Each component has specific class names to enable custom styling in your own CSS files. These classes follow a consistent pattern:

Component Classes

  • Section Container Classes

    • .section - Applied to all sections for generic styling
    • Component-specific class (e.g., .text-and-media, .hero, .features) for targeted styling
  • Item Classes

    • Component-specific item class (e.g., .text-and-media-item, .features-item) for styling individual items within a component
    • .sub-section - Applied to sub-section containers within components

Component-Specific Classes

  • Text and Media Component

    • .text-and-media - Main container
    • .text-and-media-item - Individual text/media pairs
    • .text-and-media-media - Media within text/media pairs
  • Hero Components

    • .basic-hero - Basic hero section
    • .media-hero - Hero with media section
  • Features Component

    • .features - Main container
    • .features-item - Individual feature items
    • .feature-media - Media within feature items
  • Testimonials Component

    • .testimonials - Main container
    • .testimonials-item - Individual testimonial
    • .testimonial-media - Avatar/media within testimonials
  • Pricing Component

    • .pricing - Main container
    • .pricing-item - Individual pricing plans
  • FAQ Component

    • .faq - Main container
    • .faq-item - Individual question/answer pairs
  • Call-to-Action Component

    • .cta - Main container
  • Brands Component

    • .brands - Main container
    • .brands-item - Individual brand items
  • Navbar Component

    • .navbar - Main container
    • .desktop-navbar - Desktop navigation
    • .mobile-navbar - Mobile navigation
  • Footer Component

    • .footer - Main container
    • .footer-item - Individual footer sub section

Example Usage

To style all text and media sections:

.text-and-media {
 background-color: #f9f9f9;
}

.text-and-media-item {
 border-left: 3px solid var(--color-primary);
}

TODO

  • Add template CSS for quick start
  • Add demo site
  • Add Markdown support for p tags and blog posts
  • Add much clearer documentation
  • Add Contact Form component (with API Submission)
1.5.2

7 months ago

1.5.1

7 months ago

1.5.0

7 months ago

1.4.13

8 months ago

1.4.12

8 months ago

1.4.11

8 months ago

1.4.10

8 months ago

1.4.9

8 months ago

1.4.8

8 months ago

1.4.7

8 months ago

1.4.6

8 months ago

1.4.5

8 months ago

1.4.4

8 months ago

1.4.3

8 months ago

1.4.2

8 months ago

1.4.1

8 months ago

1.4.0

8 months ago

1.3.9

8 months ago

1.3.8

8 months ago

1.3.7

8 months ago

1.3.6

8 months ago

1.3.5

8 months ago

1.3.4

8 months ago

1.3.3

8 months ago

1.3.2

8 months ago

1.3.1

8 months ago

1.3.0

8 months ago

1.2.10

8 months ago

1.2.9

8 months ago

1.2.8

8 months ago

1.2.7

8 months ago

1.2.6

8 months ago

1.2.5

8 months ago

1.2.4

8 months ago

1.2.3

8 months ago

1.2.2

8 months ago

1.2.1

8 months ago

1.2.0

8 months ago

1.1.3

8 months ago

1.1.2

8 months ago

1.1.1

8 months ago

1.1.0

9 months ago

1.0.1

9 months ago

0.9.0

9 months ago

0.8.0

9 months ago

0.7.0

9 months ago

0.6.0

9 months ago

0.5.3

9 months ago

0.5.2

9 months ago

0.5.1

9 months ago

0.5.0

9 months ago

0.4.1

9 months ago

0.4.0

9 months ago

0.3.0

9 months ago

0.2.0

9 months ago

0.1.1

9 months ago

0.1.0

9 months ago

0.0.1

9 months ago