Skip to content

Installation Guide

Installation Guide ​

This guide will help you get started with Meteor Design System in your project, whether you're using Vue.js, or just need the design tokens and icons.

Prerequisites ​

Before you begin, ensure you have:

  • Node.js 16+ installed
  • A package manager (npm, yarn, or pnpm)
  • A Vue.js 3+ project (for component library)

Component Library ​

Install the package ​

Import styles ​

Import the required CSS files in your main application file:

js
// main.js or app.js
import "@shopware-ag/meteor-component-library/styles.css";
import "@shopware-ag/meteor-component-library/font.css";

Using components ​

Import and use components in your Vue.js application:

vue
<template>
  <div>
    <MtButton variant="primary">Click me!</MtButton>
    <MtBanner variant="success">Operation completed successfully</MtBanner>
  </div>
</template>

<script setup>
import { MtButton, MtBanner } from "@shopware-ag/meteor-component-library";
</script>

Icon Kit ​

Install the package ​

Usage ​

vue
<template>
  <div>
    <!-- Using with Meteor components -->
    <MtIcon name="check" />
    
    <!-- Direct SVG usage -->
    <svg>
      <use :href="`#meteor-icon-check`"></use>
    </svg>
  </div>
</template>

<script setup>
import { MtIcon } from "@shopware-ag/meteor-component-library";
// Icon kit is automatically included when you import the component library
</script>

Design Tokens ​

Install the package ​

Usage in CSS ​

css
/* Import tokens as CSS custom properties */
@import "@shopware-ag/meteor-tokens/css/tokens.css";

.my-component {
  color: var(--color-text-primary);
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-default);
  padding: var(--spacing-4) var(--spacing-6);
}

Usage in JavaScript ​

js
import tokens from "@shopware-ag/meteor-tokens";

// Access token values programmatically
const primaryColor = tokens.color.text.primary;
const defaultSpacing = tokens.spacing[4];

Framework Integration ​

Vue.js 3 ​

Meteor is built for Vue.js 3 and works out of the box:

js
// main.js
import { createApp } from 'vue';
import "@shopware-ag/meteor-component-library/styles.css";
import "@shopware-ag/meteor-component-library/font.css";

const app = createApp(App);
app.mount('#app');

Nuxt 3 ​

For Nuxt applications, create a plugin:

js
// plugins/meteor.client.js
import "@shopware-ag/meteor-component-library/styles.css";
import "@shopware-ag/meteor-component-library/font.css";

Other Frameworks ​

While Meteor components are built for Vue.js, you can still use the design tokens and icons in any framework:

bash
# Install only tokens and icons
npm install @shopware-ag/meteor-tokens @shopware-ag/meteor-icon-kit

TypeScript Support ​

Meteor includes full TypeScript definitions. No additional setup required:

typescript
import { MtButton } from "@shopware-ag/meteor-component-library";
import type { MtButtonVariant } from "@shopware-ag/meteor-component-library/types";

const variant: MtButtonVariant = "primary";

Troubleshooting ​

Common Issues ​

Styles not loading: Ensure you've imported both styles.css and font.css in your main application file.

Components not found: Make sure you've installed the component library package and imported components correctly.

TypeScript errors: Verify you're using Vue.js 3+ and TypeScript 4.5+.

Getting Help ​

Next Steps ​