npm i @maggioli-design-system/magma @maggioli-design-system/styles @maggioli-design-system/design-tokens normalize.cssnpm i @fontsource/karla @fontsource/merriweather @fontsource/roboto @fontsource/roboto-mononpm i @maggioli-design-system/magma-react @maggioli-design-system/magma @maggioli-design-system/styles @maggioli-design-system/design-tokens normalize.cssnpm i @fontsource/karla @fontsource/merriweather @fontsource/roboto @fontsource/roboto-mononpm i @maggioli-design-system/magma-angular @maggioli-design-system/magma @maggioli-design-system/styles @maggioli-design-system/design-tokens normalize.cssnpm i @fontsource/karla @fontsource/merriweather @fontsource/roboto @fontsource/roboto-mono@layer reset, vendor, theme, base, components, utilities, overrides;
@import 'normalize.css' layer(reset);
@import '@fontsource/karla/400.css' layer(vendor);@import '@fontsource/karla/700.css' layer(vendor);@import '@fontsource/merriweather/300.css' layer(vendor);@import '@fontsource/merriweather/400.css' layer(vendor);@import '@fontsource/merriweather/700.css' layer(vendor);@import '@fontsource/roboto/500.css' layer(vendor);@import '@fontsource/roboto/700.css' layer(vendor);@import '@fontsource/roboto/900.css' layer(vendor);@import '@fontsource/roboto-mono/400.css' layer(vendor);
@import '@maggioli-design-system/styles/dist/css/colors-rgb.css' layer(theme);@import '@maggioli-design-system/styles/dist/css/typography.css' layer(theme);@import '@maggioli-design-system/styles/dist/css/reset.css' layer(reset);@import '@maggioli-design-system/styles/dist/css/hydrated.css' layer(base);@import '@maggioli-design-system/styles/dist/css/transitions.css' layer(base);@import '@maggioli-design-system/styles/dist/css/animations.css' layer(base);@import '@maggioli-design-system/styles/dist/css/globals.css' layer(theme);@import '@maggioli-design-system/styles/dist/css/semantic.css' layer(theme);@import '@maggioli-design-system/styles/dist/css/themes.css' layer(theme);@import '@maggioli-design-system/styles/dist/css/base.css' layer(base);@import 'tailwindcss/theme.css' layer(theme);@import 'tailwindcss/utilities.css' layer(utilities);@import '@maggioli-design-system/styles/dist/tailwind/theme.css';@import '@maggioli-design-system/styles/dist/tailwind/typography.css';@import '@maggioli-design-system/styles/dist/tailwind/utilities.css';npm i -D @iconsauce/core @iconsauce/material-icons @iconsauce/mdi-svg @iconsauce/mgg-iconsimport mi from '@iconsauce/material-icons';import mdi from '@iconsauce/mdi-svg';import mgg from '@iconsauce/mgg-icons';
export default { content: ['./index.html', './src/**/*.js'], plugin: [mi, mdi, mgg],};"scripts": { "icons": "iconsauce --config ./iconsauce.config.mjs --output-svg ./public/svg", "predev": "npm run icons", "prebuild": "npm run icons", "dev": "vite", "build": "vite build"}import mi from '@iconsauce/material-icons';import mdi from '@iconsauce/mdi-svg';import mgg from '@iconsauce/mgg-icons';
export default { content: ['./src/**/*.{js,jsx,ts,tsx}'], plugin: [mi, mdi, mgg],};"scripts": { "icons": "iconsauce --config ./iconsauce.config.mjs --output-svg ./public/svg", "predev": "npm run icons", "prebuild": "npm run icons", "dev": "vite", "build": "vite build"}import mi from '@iconsauce/material-icons';import mdi from '@iconsauce/mdi-svg';import mgg from '@iconsauce/mgg-icons';
export default { content: ['./src/**/*.{ts,html}'], plugin: [mi, mdi, mgg],};"scripts": { "icons": "iconsauce --config ./iconsauce.config.mjs --output-svg ./public/svg", "prestart": "npm run icons", "prebuild": "npm run icons", "start": "ng serve", "build": "ng build"}{ "glob": "**/*.svg", "input": "node_modules/@maggioli-design-system/svg-icons/dist/svg", "output": "/svg/mgg"}import './style.css';
sessionStorage.setItem('mdsIconSvgPath', '/svg/');
// Then register the components (see Components below).import { StrictMode } from 'react';import { createRoot } from 'react-dom/client';import './index.css';import App from './App.jsx';
sessionStorage.setItem('mdsIconSvgPath', '/svg/');
createRoot(document.getElementById('root')).render( <StrictMode> <App /> </StrictMode>,);'use client';import { useEffect } from 'react';
export default function MagmaIcons() { useEffect(() => { sessionStorage.setItem('mdsIconSvgPath', '/svg/'); window.dispatchEvent(new CustomEvent('mdsIconSvgPathUpdate')); }, []); return null;}import { bootstrapApplication } from '@angular/platform-browser';import { appConfig } from './app/app.config';import { App } from './app/app';
sessionStorage.setItem('mdsIconSvgPath', '/svg/');
bootstrapApplication(App, appConfig).catch((err) => console.error(err));import './style.css';import { defineCustomElementMdsButton, defineCustomElementMdsIcon, defineCustomElementMdsText,} from '@maggioli-design-system/magma/components';
sessionStorage.setItem('mdsIconSvgPath', '/svg/');
defineCustomElementMdsButton();defineCustomElementMdsIcon();defineCustomElementMdsText();<mds-text typography="h3" tag="h1">Hello Magma</mds-text><mds-button icon="mi/baseline/send">Send</mds-button><mds-icon name="mgg/abitazione-principale"></mds-icon>import { useState } from 'react';import { MdsButton, MdsIcon, MdsText } from '@maggioli-design-system/magma-react';
export default function App() { const [count, setCount] = useState(0); return ( <> <MdsText typography="h3" tag="h1"> Hello Magma </MdsText> <MdsButton icon="mi/baseline/send" onClick={() => setCount(count + 1)}> Sent {count} times </MdsButton> <MdsIcon name="mgg/abitazione-principale" /> </> );}import { Component, signal } from '@angular/core';import { MdsButton, MdsIcon, MdsText } from '@maggioli-design-system/magma-angular';
@Component({ selector: 'app-root', imports: [MdsButton, MdsIcon, MdsText], templateUrl: './app.html',})export class App { protected readonly count = signal(0);}<mds-text typography="h3" tag="h1">Hello Magma</mds-text><mds-button icon="mi/baseline/send" (click)="count.set(count() + 1)"> Sent {{ count() }} times</mds-button><mds-icon name="mgg/abitazione-principale"></mds-icon><html lang="en" class="pref-mode-system"> <!-- the page --></html>