Coming Soon
Introduction to Exo UI
Welcome to the official documentation for Exo UI — a beautifully crafted, fully accessible, and deeply customizable dashboard template system designed for modern web applications.
Exo UI is built from the ground up to provide teams with a robust starting point for creating analytics dashboards, SaaS admin panels, and complex data-driven layouts. By leveraging the utility-first power of Tailwind CSS, every single component from layout wrappers to fine-grained input controls can be adjusted to match your exact brand guidelines.
Whether you are spinning up a slick prototype or constructing an enterprise-scale architecture, this template delivers a meticulously organized codebase, built-in global dark mode support, fluid responsive design, and seamlessly integrated component libraries. This guide will walk you through the core development paradigms, theming architecture, and layout strategies you need to master Exo UI.
Installation
To get started with the template, install the dependencies and start the development server.
# Install project dependencies
npm install
# Start the optimized Vite development server
ng serve
By default, the application will be available at http://localhost:4200.
npm install
npm run dev
npm install
npm run dev
Advanced Theming & Customization
Exo UI features a robust styling engine powered by Tailwind CSS v4 and native CSS variables. This creates a flexible system where updating a few core variables instantly trickles down to hundreds of UI components intuitively.
The Design Token Architecture
In src/styles.css, you will find `@layer base` defining standard CSS variables under the `:root` selector. These variables map directly to dynamic Tailwind utility classes like bg-primary or text-foreground.
@layer base {
:root {
--background: #ffffff;
--foreground: #09090b;
--primary: #18181b;
--primary-foreground: #fafafa;
/* Adjust these to drastically recalculate the template's look! */
}
/* Seamless Dark Mode Inverses */
.dark {
--background: #09090b;
--foreground: #fafafa;
--primary: #fafafa;
--primary-foreground: #18181b;
}
}
Creating Architectural Themes
Exo UI ships with four color variants out of the box (`zinc`, `blue`, `rose`, `green`). Creating a brand new layout theme implies declaring a class globally overriding the core UI tokens.
/* Create a Custom Purple Theme */
.theme-purple {
--primary: #9333ea;
--ring: #9333ea;
}
.theme-purple.dark {
--primary: #c084fc;
--ring: #c084fc;
}
Central state management of the UI theme lives in src/app/core/services/theme.service.ts. It uses native Signals to maintain absolute reactive sync with the browser's DOM & memory.
Layouts & Architecture
Functional Standalone Routing
Exo UI relies entirely on modern Angular Standalone Components—meaning absolutely zero legacy ngModule overhead.
Open src/app/app.routes.ts to securely view and modify the primary routing tree structure. Application layouts are safely segregated at the structural root so authentication views are totally isolated from the logged-in dashboard logic.
export const routes: Routes = [
{
path: '',
component: AppShellComponent,
children: [
{
path: 'dashboard',
loadComponent: () => import('./features/dashboard/dashboard.component').then(c => c.DashboardComponent)
}
]
},
{
path: 'login',
component: AuthLayoutComponent // Completely unattached to main AppShell
}
];
Component Sandboxing & Signal Forms API
- All generic presentational frontend components sit inside
src/app/shared/components/. They strictly rely on `input()` API implementations over old `@Input()` decorators. - Exo UI leverages the bleeding-edge Angular Signal forms APIs combined with `Zod` validation schemas for user input payloads. Forms are strongly typed, fully reactive, and completely boilerplate-free natively.
React Router Architecture
In React, routing is configured using modern react-router-dom strategies leveraging nested outlet paths.
Vue Router Architecture
In Vue, view structures are managed cleanly utilizing standard nested routing strategies.
Typography
Exo UI relies on a standard system font stack to ensure zero-latency layout loading and maximum OS-level text crispness. We utilize utility classes like `text-sm`, `font-semibold`, and `tracking-tight` carefully to map directly back to Tailwind.
Heading 1
class="scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl"
Heading 2
class="scroll-m-20 border-b pb-2 text-3xl font-semibold tracking-tight first:mt-0"
Iconography
Exo UI defaults to the Lucide Icons set. Being exclusively SVG based, they are highly accessible, perform crisp scaling, and bypass the payload weight required by large icon fonts.