Skip to content

Getting Started

Welcome to the NayaOne Design System

This guide will help you install dependencies, connect the UI libraries, and start using components in your projects.

NayaOne Design System

Add NayaOne’s private registry to your package manager with your personal access token.

Terminal window
export NPM_TOKEN=<your-npm-token>
echo //gitlab.com/api/v4/packages/npm/:_authToken=${NPM_TOKEN} > .npmrc

Don’t have one? Generate a new personal access token

Terminal window
bun install @fintech-sandpit/ui
Terminal window
npm install @fintech-sandpit/ui
Terminal window
bun install tailwindcss
Terminal window
npm install tailwindcss

In case of using Vite, add its plugin for TailwindCSS and a configuration file.

Terminal window
bun install @tailwindcss/vite
Terminal window
npm install @tailwindcss/vite

tailwind.config.ts

import type { Config } from 'tailwindcss';
const config: Config = {
darkMode: ['selector', '&:where([data-theme="dark"] *)'],
content: ['./src/**/*.{js,jsx,ts,tsx,vue}'],
};
export default config;

vite.config.ts

import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite';
import react from '@vitejs/plugin-react'
export default defineConfig({
plugins: [
react(),
tailwindcss(),
],
})

vite.config.ts

import { defineConfig } from 'vite'
import tailwindcss from '@tailwindcss/vite';
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [
tailwindcss(),
vue(),
],
})

index.css

@import '@fintech-sandpit/ui/style/base.css';
@import '@fintech-sandpit/ui/style/palette.css';

main.tsx

import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import App from './App.tsx';
import './index.css'; /* <- make sure the stylesheet file is imported */
const root = document.getElementById('root');
if (root) {
createRoot(root).render(
<StrictMode>
<App />
</StrictMode>,
)
} else {
alert('No root element found! Application will not start.');
}

component.tsx

import { Button } from '@fintech-sandpit/ui/react';
return (
<Button
colorScheme="primary"
variant="outline"
size="lg"
>
Click me
</Button>
);

index.css

@import '@fintech-sandpit/ui/style/base.css';
@import '@fintech-sandpit/ui/style/palette.css';

app.vue

<style lang="css">
@import "@fintech-sandpit/ui/style/base.css";
@import "@fintech-sandpit/ui/style/palette.css";
</style>

component.vue

<script setup lang="ts">
import { Button } from '@fintech-sandpit/ui/vue';
</script>
<template>
<Button
color-scheme="primary"
variant="outline"
size="lg"
>
Click me
</Button>
</template>