Getting started
Aura is two layers: a token package that ships the CSS, and a thin component library per framework. The components render class names — the visual layer lives in the tokens, once, for everyone.
1. Install
# nothing to install — link the two stylesheets and write markup
npm i @ilomee/aura-corenpm i @ilomee/aura-react @ilomee/aura-core react react-domnpm i @ilomee/aura-vue @ilomee/aura-core vuenpm i @ilomee/aura-svelte @ilomee/aura-core sveltenpm i @ilomee/aura-angular @ilomee/aura-core @angular/core @angular/common@ilomee/aura-core and your framework are peer dependencies — not bundled into this package. You import from it directly in the next step, so without it installed nothing renders correctly.
2. Load the stylesheets — once
The components ship no styles of their own. Without these imports you get correct markup with no appearance.
<link rel="stylesheet" href="node_modules/@ilomee/aura-core/dist/tokens.css" />
<link rel="stylesheet" href="node_modules/@ilomee/aura-core/dist/components.css" />
<link rel="stylesheet" href="node_modules/@ilomee/aura-core/dist/animations.css" /><!-- optional -->import '@ilomee/aura-core/css'; // CSS variables — required
import '@ilomee/aura-core/components.css'; // component + layout + type classes — required
import '@ilomee/aura-core/animations.css'; // optionalimport '@ilomee/aura-core/css';
import '@ilomee/aura-core/components.css';
import '@ilomee/aura-core/animations.css'; // optionalimport '@ilomee/aura-core/css';
import '@ilomee/aura-core/components.css';
import '@ilomee/aura-core/animations.css'; // optional/* In angular.json "styles", or a global stylesheet. */
@import '@ilomee/aura-core/css';
@import '@ilomee/aura-core/components.css';
@import '@ilomee/aura-core/animations.css'; /* optional */3. Use it
<html data-theme="light" data-accent="aqua">
<div class="aura-stack" style="--aura-gap: var(--space-4)">
<h1 class="aura-text aura-text--h1">Aura</h1>
<button class="aura-btn aura-btn--primary">Get started</button>
<button class="aura-btn">Cancel</button>
</div>
</html>import { AuraProvider, Button, Stack, Typography } from '@ilomee/aura-react';
export function App() {
return (
<AuraProvider defaultTheme="light" defaultAccent="aqua">
<Stack gap={4}>
<Typography variant="h1">Aura</Typography>
<Button variant="primary">Get started</Button>
</Stack>
</AuraProvider>
);
}<script setup lang="ts">
import { AuraProvider, Button, Stack, Typography } from '@ilomee/aura-vue';
</script>
<template>
<AuraProvider default-theme="light" default-accent="aqua">
<Stack :gap="4">
<Typography variant="h1">Aura</Typography>
<Button variant="primary">Get started</Button>
</Stack>
</AuraProvider>
</template><script lang="ts">
import { AuraProvider, Button, Stack, Typography } from '@ilomee/aura-svelte';
</script>
<AuraProvider theme="light" accent="aqua">
<Stack gap={4}>
<Typography variant="h1">Aura</Typography>
<Button variant="primary">Get started</Button>
</Stack>
</AuraProvider>import { Component } from '@angular/core';
import { AuraTheme, AuraButton, AuraText, AuraStack } from '@ilomee/aura-angular';
@Component({
standalone: true,
selector: 'app-root',
imports: [AuraTheme, AuraButton, AuraText, AuraStack],
template: `
<div auraTheme theme="light" accent="aqua">
<div auraStack [gap]="4">
<h1 auraText variant="h1">Aura</h1>
<button auraButton variant="primary">Get started</button>
</div>
</div>
`,
})
export class AppComponent {}Without a component library
The classes are the real API. If you would rather not install a component package, import the two stylesheets and write the markup yourself — this is exactly what every framework package emits.
<html data-theme="dark" data-accent="iris">
<button class="aura-btn aura-btn--primary">Create</button>
<div class="aura-card aura-card--raised">…</div>
</html>