Introduction

Xino Crypto Angular Premium Admin and Dashboard Template for All Your Web Projects

Xino Crypto Angular Premium Admin and Dashboard Template, With these template formats, it's very easy to create a presence and grab someone's attention around the web page Because the template is built using using Angular, CSS, Scss and with TypeScript. So please before you start working with the template take a quick look on the documentation so that you can easily built your website.

Support and Updates:

When you purchase Xino, you gain access to free future updates to ensure your template remains up-to-date. Plus, our support team is always ready to assist with any questions.

What Do You Get with the Xino:

Xino provides all necessary Angular Components files,CSS, Scss and TS Files, along with detailed Documentation to help you easily customize and implement the template.

  • All Angular Components
  • CSS Files
  • SCSS Files
  • Ts Files
  • Documentation
  • Starterkit

Xino Compatibility with Popular Browsers:

Xino is fully compatible with major browsers, ensuring a seamless user experience across Chrome, Firefox, Safari, Edge, and Opera.

  • Firefox
  • Safari
  • Opera
  • Chrome
  • Edge

Getting Start Guide

Setting Up The Local Environment & Workspace

This comprehensive guide provides step-by-step instructions on how to set up your development environment Angular tool. It covers everything from the necessary prerequisites to installing the tool, creating an initial workspace, and setting up a starter app. You'll also learn how to run the app locally to test and verify your setup. By following this guide, you can ensure that your development environment is properly configured for Angular, and you can get started with your project confidently and efficiently. Whether you're a beginner or an experienced developer, this guide is an essential resource for anyone looking to work with Angular.

Prerequisites
To use the Angular Framework, you should be familiar with the following:
  • Angular
  • Angular Bootstrap
  • Typescript
Knowledge of Typescript is helpful.

Prerequisites

To install Angular on your local System, you need the following:

Node.js

Angular requires a current, active LTS (long term support) or maintenance LTS (long term support) version of Node.js.

Download latest version of node.js from nodejs.org.
Install Node.js using downloaded file.
To check your node version, run node -v in a terminal/console window (cmd)

Npm package Manager

The Angular CLI and Angular applications depend on npm packages for many features and functions.
To download and install npm packages, you need an npm package manager.
This guide uses the npm client command line interface, which is installed with Node.js by default. To check that you have the npm client installed, run npm -v in a terminal/console window (cmd)

For better understanding Angular we suggest you once go through official documentation of Angular from Angular Documentation

Installation Process

How to Run the Xino Angular Template:

Step1:

Download the Xino.rar/zip file.

Extract it there you will find Xino(main project file), Starter-kit(set of files and code that provides a basic structure and functionality for a specific type of application), Readme.txt, Documentation.

Step2:

Go to the Xino folder/directory. open the command prompt/ terminal run the below command.

code

npm install            // If you faced any issue running "npm install" Please make sure to use,
                        
npm install --force 	// This command will ignore if there was any dependency issue.
(or)
yarn install			// yarn can handle dependency issues better than npm.
                                            
                                            

Once the installation was successful then you can find node_modules folder where all the downloaded libraries are available.

Step3:

To serve the Angular project, In command prompt or terminal run the following command:

code

ng serve

Once you serve your application by default port is set to 4200 :http://localhost:4200/

To change the Angular port manually, you can specify the port number when running the ng serve command. By default, the port is set to 4200, but you can specify a different port number by appending `--port` followed by the desired port number.

code

ng serve --port 1234
How to Convert SCSS to CSS:

If you need to change any styles, modify the SCSS files. To convert SCSS to CSS, run the following command:

code

npm run sass

Installation Video

Staterkit:

StarterKit is a foundational template or boilerplate that provides the basic structure and essential components needed to build a web application from scratch. It’s designed to save time by offering pre-configured setups, allowing developers to focus on building features rather than setting up the initial project structure.

  • Folder Structure: Organized directories for components, pages, assets, styles, and utilities.
  • Basic Pages: Such as a dashboard, login/authentication page, and error pages.
  • Reusable Components:dashboards, pages, apps, uitilities, ui-elements, advanced-ui, tables, maps, charts, forms ready to be customized.
  • Styling Setup: CSS, SCSS for quick UI development.
How to Run the Staterkit:
Step 1:
Navigate to the staterkit folder named Staterkit. Open the template to proceed.
Step 2: Open your terminal or command prompt and run the following command to install the packages:

code

npm install

(or)

yarn install

Step 2:
After the installation, run the project using the following command:

code

ng serve
                                            

Once you serve your application by default port is set to 4200 :http://localhost:4200/

To change the Angular port manually, you can specify the port number when running the ng serve command. By default, the port is set to 4200, but you can specify a different port number by appending `--port` followed by the desired port number.

code

ng serve --port 1234
How to Convert SCSS to CSS:
If you need to change any styles, modify the SCSS files. To convert SCSS to CSS, run the following command:

code

npm run sass

Folder Structure

StaterKit Guide

Purpose of a starter kit
Introduction to the Angular Starter Kit Template:

The Angular template starterkit is a resource that helps developers kickstart their Angular web development projects by providing a preconfigured and ready-to-use template. It aims to simplify the initial setup and provide a foundation for building Angular-based websites or applications.

Purpose of the Angular Starter Kit Template:

The purpose of the Angular Starter Kit Template is to save developers time and effort by offering a set of prebuilt files and configurations commonly used in Angular projects. Instead of starting from scratch, developers can leverage the starter kit to quickly set up a project structure that adheres to best practices and industry standards.

Benefits of Using the Angular Starter Kit Template:

The starter kit eliminates the need to set up the basic project structure manually. It provides a well-organized file and folder structure, including commonly used directories for separating code, templates, assets, and configuration files. This allows developers to focus more on implementing business logic rather than spending time on initial setup.
Before using the Angular Starter Kit Template, developers should have a basic understanding of Angular and web development concepts.

Starterkit Overview

You can use the Starterkit if you are creating a new project. It will be time-consuming to use the full admin version for a new project as Xino- Angular have more than 100 components.

We have provided all the pre-build layouts like Sidemenu, Header, footer and blank pages etc in the Starterkit.

For further information or support regarding the template, please contact us using the provided link. https://support.spruko.com/

  • Take a quick look at the folder structure of the "Starterkit."
  • Integration of your customized Angular pages becomes easy when using the "Starterkit."
  • The "Starterkit" provides all the layout components, related assets, and plugins.
  • To explore the contents of the "Starterkit," unzip the project folder received after purchase.

Main Layout

General angular component structure of the Xino template Shared Folder.

Root:shared/layouts/full-layout.html

html

  
                                            
                                            
                                        

Angular file Structure

General Angular file structure of the Xino template .Root:\src\app\components\pages\empty-page\empty-page.html

html

    
<app-breadcrumb  title="Pages" active_item="Empty"></app-breadcrumb>
<!-- Start::row-1 -->
<div class="row">
    <div class="col-xl-12">
        <div class="card custom-card">
            <div class="card-body">
             <h6 class="mb-0">Empty Card</h6>
            </div>
        </div>
    </div>
</div>
<!-- End::row-1 -->
   

SideMenu Guide

How to Add Menus to Sidebar

In your Angular project, you can easily add menus to the sidebar by modifying the MENUITEMS array in the nav.service.ts (src\app\shared\services\nav.service.ts) file. The sidebar will dynamically display the menus based on the contents of this array.

Steps:
1 .Open nav.service.ts File:

Open the nav.service.ts (src\app\shared\services\nav.service.ts) file in your Angular project. This file contains the MENUITEMS array that defines the menus to be displayed in the sidebar.

To add the parent Menu Items:

Inside the MENUITEMS array, you can add your menu items using the following format:

ts

    
title: 'Your Menu Title',
selected: false,
icon: 'icon-name',
type: 'link', // or 'sub', 'mega-menu', 'external', 'empty'
path: '/path-to-route', // Specify the route path for link type
active: false,
badgeClass: 'badge-class', // (optional) Add a badge to the menu item
badgeValue: 'Badge Text', // (optional) Text to display in the badge
        
To add the children Menu Items:

Inside the MENUITEMS array, you can add your menu items using the following format:

ts

    
    {
        title: 'Your Menu Title',
        selected: false,
        icon: 'icon-name',
        type: 'link', // or 'sub', 'mega-menu', 'external', 'empty'
        active: false,
        badgeClass: 'badge-class', // (optional) Add a badge to the menu item
        badgeValue: 'Badge Text', // (optional) Text to display in the badge
        children: [
         // (optional) Define child items for sub-menu or mega-menu type
         {
           path: '/child-path',
           title: 'Child Menu Title',
           type: 'link',
           selected: false,
         },
         // Add more child items if needed
       ],
     }
        
  • title: The display name of the menu.
  • selected: Set to true if this menu is currently selected.
  • icon: The icon to display next to the menu.
  • type: Specify the type of the menu item (link, sub, mega-menu, external, empty).
  • path: Specify the route path for link type menu.
  • Menusub: Set to true for sub-menu or mega-menu types.
  • active: Set to true to mark this menu as active.
  • badgeClass (optional): CSS class for the badge.
  • badgeValue (optional): Text to display in the badge.
  • children: Define an array of child menu items for sub-menu or mega-menu type.
3 . Save the Changes:

After adding your menu items, save the changes made to the nav.service.ts (src\app\shared\services\nav.service.ts) file.

4 . View Sidebar Changes:

he sidebar will now automatically display the added menu items based on the modifications you made in the MENUITEMS array.

By following these steps, you can easily customize and add menus to the sidebar of your Angular project. The menus will be dynamically generated based on the content of the MENUITEMS array in the nav.service.ts file.

Routing

In a single-page application, you change what the user sees by showing or hiding portions of the display that correspond to particular components, rather than going out to the server to get a new page. As users perform application tasks, they need to move between the different views that you have defined.

To handle the navigation from one view to the next, you use the Angular Router. The Router enables navigation by interpreting a browser URL as an instruction to change the view. Your complete route structure is place at app-routing.module.ts file under src » app

Suppose you want to create a new module then you have to add new routes for that modules.


Basic Route

Following are the fundamental building blocks to creating a route.

  1. Import the AppRoutingModule into app.config.ts and add it to the imports array.

ts

import { ApplicationConfig, importProvidersFrom } from '@angular/core';
import { RouterOutlet, provideRouter } from '@angular/router';
import { App_Route } from './app.routes';
export const appConfig: ApplicationConfig = {
    providers: [provideRouter(App_Route),RouterOutlet,provideAnimations(),
    importProvidersFrom()
    ]
};

Import RouterModule and Routes into your routingmodule.

The Angular CLI performs this steps automatically. The CLI also set up a Routes array for your routes and configures the imports and exports array


ts

            
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { admin, dashboardRoutingModule } from '../../components/dashboards/dashboard.routes';
export const content: Routes = [
  { path: '', children: [
   ...dashboardRoutingModule.routes,
  ]}
  ];
@NgModule({
    imports: [RouterModule.forRoot(admin)],
    exports: [RouterModule]
})
export class SaredRoutingModule { }
                                        

Define your routes in your Routes array.

Each route in this array is a JavaScript object that contains two properties. The first property path, defines the URL path for the route. The second property component, defines the component Angular should use for the corresponding path.

Use that component name with path, name, and data attribute in routes array in app-routing.module.ts file

ts

         
    import { NgModule } from '@angular/core';
    import { RouterModule, Routes } from '@angular/router';
    export const admin: Routes = [
     {path:'default',children:[ {
      path: 'default',
      loadComponent: () =>
        import('./default/default').then((m) => m.DefaultComponent),
    },]}
    ];
    @NgModule({
      imports: [RouterModule.forChild(admin)],
      exports: [RouterModule],
    })
    export class dashboardRoutingModule {
      static routes = admin;
    }
    @NgModule({
    imports: [RouterModule.forChild(routes)],
    exports: [RouterModule]
    })
    export class AppRoutingModule { }
        

Add your routes to your application.

Now that you have defined your routes, you can add the component to your application. First, add links to the components. Assign the anchor tag that you want to add the route to the routerLink attribute. Set the value of the attribute to the component to show when a user clicks on each link. Next, update your component template to include<router-outlet>This element informs Angular to update the application view with the component for the selected route.

html

        
<nav>
<ul class="list-unstyled">
    <li><a [routerLink]="['/default']" routerLinkActive="active">First Component</a></li>
</ul>
</nav>
  
<router-outlet></router-outlet>

Changing SCSS to CSS using the SASS Package

Introduction :

This documentation outlines the process of converting SCSS (Sassy CSS) files to standard CSS (Cascading Style Sheets) in a project's assets directory using the SASS package. SCSS is a preprocessor for CSS, and SASS is a popular choice for transforming SCSS into CSS efficiently. This guide provides step-by-step instructions on installing the SASS package, configuring it in your project, and converting SCSS files to CSS.

  • Prerequisites

    Before proceeding, ensure that you have the following prerequisites:

    Node.js installed on your system.

    A project directory with SCSS files that you want to compile into CSS.

Installation :

Install the SASS package using npm (Node Package Manager) by running the following command:

code

npm install sass

This command will download and install the SASS package and its dependencies into your project.

Configuration :

To configure SASS for your project, follow these steps:

  • 1. Open your project's package.json file. If you don't have one, you can create it by running npm init and following the prompts.

  • 2. Inside the package.json file, locate the "scripts" section. If it doesn't exist, create one:

    code

    "scripts": {
     // ...existing scripts...
    }

  • 3. Add a script that specifies the compilation process from SCSS to CSS. You can name the script as you prefer, but for this example, we'll name it "sass." The script should look like this:

    code

    "scripts": {
    "sass": "sass ./public/assets/scss:./public/assets/css/" }

    In the script above, replace ./public/assets/scss with the path to your SCSS files and ./public/assets/css with the destination directory for your compiled CSS files.

  • 4. Add a script that specifies the compilation compressed process from SCSS to CSS. You can name the script as you prefer, but for this example, we'll name it "sass-min." The script should look like this:

    code

    "scripts": {
        "sass-min": "sass ./public/assets/scss:./public/assets/css/ --style compressed"
      }

    In the script above, replace ./public/assets/scss with the path to your SCSS files and ./public/assets/css with the destination directory for your compiled CSS files.

  • 5. Save the package.json file.

Compiling SCSS to CSS :

With the SASS package and script configured, you can now compile your SCSS files to CSS with the following steps:

  • 1. Open your terminal or command prompt.

  • 2. Navigate to your project's root directory if you're not already there.

  • 3. Execute the following command to run the "sass" script:

    code

    npm run sass

    This command will initiate the SCSS to CSS compilation process using the SASS package.

  • 4. Execute the following command to run the "sass-min" script:

    code

    npm run sass-min

    This command will initiate the SCSS to CSS compilation compressed process using the SASS package.

  • 5. Once the process is complete, the compiled CSS files will be generated in the specified destination directory (e.g., ./public/assets/css).

Conclusion :

You have successfully configured and used the SASS package to convert SCSS files to CSS in your project. This allows you to take advantage of SCSS's powerful features while ensuring that your web application uses standard CSS for styling.

Firebase Authentication Guide

Firebase SetUp

Step-1: Now run below commands inside angular 19 to install firebase latest.

terminal

step-2: Now we need to add firebase configuration details(create database on firebase) and we need to add that details in (angular_project/src/environments/environment.ts)

ts


And also include them in angular_project/src/environments/environment-prod.ts file:

ts

step-3: . Now we nee to add or replace below code into ourangular_project/src/app/app.module.tsfile:

ts

                    
 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 import { environment } from 'src/environments/environment';
 import { AngularFireModule } from '@angular/fire/compat';
 import { AngularFirestoreModule } from '@angular/fire/compat/firestore';
 import { AngularFireAuthModule } from '@angular/fire/compat/auth';
 imports:[
 ...
 BrowserAnimationsModule, // required animations module
 AngularFireModule.initializeApp(environment.firebase),
 AngularFirestoreModule,
 AngularFireAuthModule
 ]
                                            
Process to remove firebase :
  • To remove firebase from the project make sure that you have to remove the auth.service.ts file in src/app/shared/auth.
  • In login.ts replace login function with
  • ts

    login() {
        if (this.loginForm.controls['email'].value === "spruko@template.com" && this.loginForm.controls['password'].value === "spruko"){
                this.router.navigate(['/dashboard/sales']);
        }
    }
                                                                                
  • or else you can use any other authentication as per your requirement. And make sure to remove canActivate: [AdminGuard] from app-routing.module.ts. Remove the firebase-related content in app.module.ts, environment.
  • Note: make sure to remove all AuthService from the project which can be found in the switcher, header, authentication, ect..

FAQ'S

Step 1:

Go To style.scss (public/assets/scss/styles.scss )

if you want to change another font-family Go to the site Google Fonts And Select One font Family and import in to styles.scss file

How to Select font Family

Step 2:

And paste Your Selected font-family in style.scss

Step 3:

And add the Your Selected font-family in _variables.scss(public/assets/scss/_variables.scss)

code

--default-font-family: "Space Grotesk", sans-serif;

By default menu icons are phosphoricons if you want to change icons please follow below steps
Step 1 :

To change Menu icons, open sidebar.html page Path:src/html/partials/sidebar.html and go through app-sidebar section, in that section you will find phosphoricons of menu in svg tag, there you can replace previous icon with your icon. Example as shown in below

next




                                                    

Go To "public/assets/images/brand-logos" folder and replace your logo with Previous Logos within in image size. note: Please don't increase logo sizes. Replace your logo within given image size. otherwise the logo will not fit in particular place it disturbs the template design.

Step1:

Open src/app/shared/services/app-state.service.ts file src/app/shared/services/app-state.service.ts

To clear LocalStorage loading functions you need to remove updateStateAndEmit() function in src/app/shared/services/app-state.service.ts as shown below

code

private updateStateAndEmit(state: any) {...}
Step2:

To remove complete LocalStorage saving you need to remove all localstorage related calling functions in src/app/shared/services/app-state.service.ts src/app/shared/services/app-state.service.ts file.

LocalStorage related functions like localStorage.setItem, localStorage.removeItem, localStorage.getItem, localStorage.clear. Below are the some examples to find out.

code

localStorage.clear();

Step1:

Open header.html file src\app\shared\componets\header\header.html

To remove switcher icons remove below code shown in header.html file

code

<!-- Start::header-element -->
<li class="header-element">
<!-- Start::header-link|switcher-icon -->
<a (click)="toggleSwitcher()" href="javascript:void(0);" class="header-link switcher-icon" data-bs-toggle="offcanvas" data-bs-target="#switcher-canvas">
<i class="ti ti-settings"></i>
</a>
<!-- End::header-link|switcher-icon -->
</div>
<!-- End::header-element -->
Step2:

After removing code in header.html To remove switcher Toggle function From header.ts open src\app\shared\componets\header\header.ts file

code

toggleSwitcher() {...}

Please follow the below steps to change Primary Color
Step 1 :

To change Primary Color you have to open _variables.scss file and replace what color you want as shown in below

Rootpath : _variables.scss (public/assets/scss/_variables.scss )

Please follow the below steps to change Dark body Color
Step 1 :

Make sure the theme is set completely to dark mode by adding the following attributes to the html tag data-theme-mode="dark" data-header-styles="dark" data-menu-styles="dark"

Step 2 :

To change Dark body Color you have to open _variables.scss file and replace what color you want as shown in below

Rootpath : _variables.scss (public/assets/scss/_variables.scss )

Step 3 :

Also Change the following variable colors to the desired theme background accordingly in [data-theme-mode="dark"]

--light-rgb :
--form-control-bg :
--input-border :
--gray-3 :

Credit's

Images Credit
Images References
Vecteezy https://www.vecteezy.com/
Iconscount https://iconscout.com/
Unsplash https://unsplash.com/
Fonts Credit
Font References
Google Fonts https://fonts.google.com/
Sidemenu & Header Icons
Icon References
Sidemenu - Themify Icons https://themify.me/themify-icons
Header - Feather Icons https://feathericons.com/

Switcher styles

html

<html lang="en" dir="ltr" data-nav-layout="vertical" data-vertical-style="overlay" data-theme-mode="light" data-header-styles="light" data-menu-styles="dark">

Light:

html

data-theme-mode="light" data-header-styles="light" data-menu-styles="light"
Dark:

html

data-theme-mode="dark" data-header-styles="dark" data-menu-styles="dark"

LTR (Left to Right):

html

dir="ltr"
RTL (Right to Left):

html

dir="rtl"

Vertical:

html

data-nav-layout="vertical"
Horizontal:

html

data-nav-layout="horizontal" data-nav-style="menu-click"

Default:

Menu Click

data-nav-style="menu-click"
Menu Hover

html

data-nav-style="menu-hover"
Icon Click:

html

data-nav-style="icon-click"
Icon Hover:

html

data-nav-style="icon-hover"

Regular:

html

data-page-style="regular"
Classic:

html

data-page-style="classic"
Mordern:

html

data-page-style="modern"
Flat:

html

data-page-style="flat"

Default Width:

html

data-width="default"
Full Width:

html

data-width="full-width"
Boxed:

html

data-width="boxed"
Fixed:

html

data-menu-position="fixed"
Scrollable:

html

data-menu-position="scrollable"

Fixed:

html

data-header-position="fixed"
Scrollable:

html

data-header-position="scrollable"

Closed:

html

data-vertical-style="closed"
Icontext:

html

data-vertical-style="icontext"
Overlay:

html

data-vertical-style="overlay"
Detached:

html

data-vertical-style="detached"
Doublemenu:

html

data-vertical-style="doublemenu"

Enable:

html

loader="enable"
Disable:

html

loader="disable"

Light Style:

html

data-menu-styles="light"
Dark Style:

html

data-menu-styles="dark"
Color Style:

html

data-menu-styles="color"
Gradient Style:

html

data-menu-styles="gradient"
Transparent Style:

html

data-menu-styles="transparent"

Light Style:

html

data-header-styles="light"
Dark Style:

html

data-header-styles="dark"
Color Style:

html

data-header-styles="color"
Gradient Style:

html

data-header-styles="gradient"
Transparent Style:

html

data-header-styles="transparent"

Background Image Style-1:

html

data-bg-img="bgimg1"
Background Image Style-2:

html

data-bg-img="bgimg2"
Background Image Style-3:

html

data-bg-img="bgimg3"
Background Image Style-4:

html

data-bg-img="bgimg4"
Background Image Style-5:

html

data-bg-img="bgimg5"

Ng-Apexcharts :

Ng-Apexcharts is an implementation of apexcharts for angular. It comes with one simple component that enables you to use apexcharts in an angular project.

code

html


 <spk-apexcharts [chartOptions]="chartOptions"></spk-apexcharts>


Html


        import {ChartComponent,ApexAxisChartSeries, ApexChart,ApexXAxis,ApexDataLabels,ApexTooltip,ApexStroke,ApexYAxis,ApexFill,
ApexTitleSubtitle,ApexLegend,ApexMarkers, ApexAnnotations} from 'ng-apexcharts';
        import { SpkApexcharts } from '../../../../@spk/spk-apexcharts/apexcharts';
        export type ChartOptions = {
            series: ApexAxisChartSeries;
            chart: ApexChart;
            dataLabels: ApexDataLabels;
            markers: ApexMarkers;
            title: ApexTitleSubtitle;
            fill: ApexFill;
            yaxis: ApexYAxis;
            xaxis: ApexXAxis;
            tooltip: ApexTooltip;
            stroke: ApexStroke;
            annotations: ApexAnnotations;
            colors: any;
            toolbar: any;
            legend: ApexLegend;
          };
        @Component({
            selector: 'app-area-charts',
            standalone: true,
            imports: [SpkApexcharts],
            templateUrl: './area-charts.html',
            styleUrl: './area-charts.scss',
          })
          export class AreaCharts {
            chartOptions: any = {
               ...
            }
          }
    
    

Angularx Flatpickr :

Angularx Flatpickr is a Angular wrapper for the Flatpickr date picker library, offering a lightweight and customizable solution for selecting dates and times. It provides smooth integration, supports various date formats, and includes features like range selection, time picking, and more.

code

Html


 <spk-flatpickr placeholder="Choose Date" class="form-control"
 [mode]="'single'" [altInput]="false" [convertModelValue]="true" [enableTime]="false"
 [dateFormat]="'Y-m-d'"> </spk-flatpickr>
    
    

ts


    import { FlatpickrDefaults, FlatpickrModule } from 'angularx-flatpickr';
    import { SpkFlatpickr } from '../../../../@spk/spk-flatpickr/spk-flatpickr';

    @Component({
    selector: 'app-datetimepicker',
    standalone: true,
    imports: [FlatpickrModule,SpkFlatpickr],
    providers:[FlatpickrDefaults],
    templateUrl: './datetimepicker.html',
    styleUrl: './datetimepicker.scss'
    })
    export class Datetimepicker { 
                                                            
    }
    
    

css

Ng Select :

Ng Select is a flexible, customizable dropdown/select input component for Angular, offering features like multi-select, search, and async options. It provides an intuitive, user-friendly interface with advanced styling and accessibility support.

code

html

Html

Ngx Easy Table :

Ngx Easy Table is a Angular wrapper for the Ngx Easy table library, enabling the creation of interactive, customizable, and responsive data tables. It supports features like sorting, filtering, pagination, and inline editing, with a focus on performance and easy integration into Angular projects.

code

Html

ts

css

Angular Material Data Tables :

Angular Material Dat Tables is a flexible, feature-rich table component for Angular that simplifies the process of displaying and managing large datasets. It includes built-in support for sorting, pagination, search, and filtering, and can be easily customized for a seamless integration into Angular applications.

code

Html


   <spk-angular-material-tables [dataSource]="dataSource"></spk-angular-material-tables>
                            

ts


     
    import { SpkAngularMaterialTables } from '../../../@spk/spk-reusable-plugins/spk-angular-material-tables/spk-angular-material-tables';
    @Component({
      selector: 'app-angular-material-tables',
      standalone: true,
      imports: [SpkAngularMaterialTables],
      templateUrl: './angular-material-tables.html',
      styleUrl: './angular-material-tables.scss'
    })
    export class AngularMaterialTables {
        dataSource = [
        { position: 1, name: 'Hydrogen', weight: 1.0079, symbol: 'H' },
        { position: 2, name: 'Helium', weight: 4.0026, symbol: 'He' },
      ];
    }
      
    
    

Angular ngx-bar-rating

Angular ngx-bar-rating is a component that integrates Rating design system to create customizable, interactive rating systems in Angular applications. It allows users to easily select a rating through stars or other symbols, with built-in support for customization, accessibility, and styling.

code

Html


    
       <spk-bar-rating [maxStars]="5" ></spk-bar-rating>
    
    
    

ts


     
        import { BarRating } from '../../../@spk/spk-reusable-plugins/bar-rating/bar-rating';
        import { BarRatingModule } from 'ngx-bar-rating';
        @Component({
          selector: 'app-ratings',
          standalone: true,
          imports: [BarRatingModule,BarRating],
          templateUrl: './ratings.html',
          styleUrl: './ratings.scss'
        })
        export class Ratings {
        }
      
    
    

Basic Table :

Angular Basic tables are simple, customizable table components for displaying structured data in a clean and responsive layout

Html

Ts


    import { Component } from '@angular/core';
    import { SpkReusableTables } from '../../../@spk/spk-reusable-tables/spk-reusable-tables';
    @Component({
      selector: 'app-tables',
      standalone: true,
      imports: [SpkReusableTables],
      templateUrl: './tables.html',
      styleUrl: './tables.scss'
    })
    export class Tables {
      basicColumn=[
        {header:"Name",field:"Name"},         
        {header:"Created On",field:"Created On"},
        {header:"Number",field:"Number"},
        {header:"Status",field:"Status"}
      ]
      basicTables=[
        {name:"Mark",date:"21,Dec 2021",contact:"+1234-12340",bg:"primary",status:"Completed"},
        {name:"Monika",date:"29,April 2023",contact:"+1523-12459",bg:"warning",status:"Failed"},
        {name:"Madina",date:"30,Nov 2023",contact:"+1982-16234",bg:"success",status:"Successful"},
        {name:"Bhamako",date:"18,Mar 2023",contact:"+1526-10729",bg:"secondary",status:"Pending"},
      ]
    }
    
    

Alerts :

Angular Bootstrap Alerts are pre-styled, customizable alert components that integrate Bootstrap's alert system with Angular. They provide an easy way to display important messages or notifications, with built-in support for different styles (success, error, info, etc.), dismissible functionality, and seamless Angular integration.

Html


          <spk-alerts
            [variant]="color"
            [title]="title"
          ></spk-alerts>
    
    
    

data


    import { Component, ViewChild } from '@angular/core';
    import { SpkAlerts } from '../../../@spk/reusable-ui-elements/spk-alerts/spk-alerts';
    
    @Component({
      selector: 'app-alerts',
      standalone: true,
      imports: [SpkAlerts],
      templateUrl: './alerts.html',
      styleUrls: ['./alerts.scss']
    }) 
    export class Alerts {
    }
    
      
    
    
    

Cards :

Angular Bootstrap Cards are versatile, customizable components for displaying content in a flexible, structured layout. They integrate Bootstrap’s card system with Angular, allowing you to create various types of content containers with options for images, headers, footers, and more, making them ideal for building rich, responsive UI elements.

Html


    <spk-mountains-card [imageUrl]="imageUrl"  [title]="title"  
    [badgeText]="badgeText" [badgeClass]="badgeClass"  [text]="text">
    </spk-mountains-card>
        
    
    

Html


    import { Component } from '@angular/core';
    import { SpkMountainsCard } from '../../../@spk/reusable-ui-elements/spk-cards/spk-mountains-card/spk-mountains-card';
    
        @Component({
            selector: 'app-cards',
            standalone: true,
            imports: [SpkMountainsCard],
            templateUrl: './cards.html',
            styleUrl: './cards.scss'
          })
          export class Cards {
     } 
    

Progress :

Angular Bootstrap Progress is a component that allows you to display progress bars in Angular applications, indicating the completion status of tasks or operations. It integrates seamlessly with Bootstrap’s progress bar styles, supporting features like custom labels, striped animations, and varying bar colors for easy customization and responsiveness.

Html


    <spk-progress  [barClass]="'bg-primary'" [showLabel]="false"></spk-progress>
    
    

Html


    import { Component } from '@angular/core';
        import { SpkProgress } from '../../../@spk/reusable-ui-elements/spk-progress/spk-progress';
        @Component({
          selector: 'app-progress',
          standalone: true,
          imports: [SpkProgress],
          templateUrl: './progress.html',
          styleUrls: ['./progress.scss']
        })
        export class Progress {
      
     }
    
    
    

Toast :

Angular Bootstrap Toast is a component that provides a simple way to create toast menus in Angular applications, following Bootstrap's design conventions. It supports various options like single or multi-level menus, alignment, and customization of triggers (e.g., buttons or links), making it easy to build responsive, interactive toasts with minimal effort.

html


     <spk-toast (hide)="show = false" [autohide]="false" content=" Hello, world! This is a toast message"></spk-toast>
    
    
    

ts


    import { Component } from '@angular/core';
        import { SpkToast } from '../../../@spk/reusable-ui-elements/spk-toast/spk-toast';
        @Component({
          selector: 'app-toasts',
          standalone: true,
          imports: [SpkToast],
          templateUrl: './toasts.html',
          styleUrls: ['./toasts.scss']
        })
        export class Toasts {
      
     }
    

Accordions :

Angular Bootstrap Accordion is a component that allows you to display collapsible content panels in a stack, ideal for organizing large amounts of content in a compact, interactive layout. It integrates with Bootstrap’s accordion system, supporting features like multiple or single panel expansion, custom styling, and smooth animations, making it easy to create dynamic, space-efficient UIs in Angular applications.

html


     <spk-ngb-accordion [accordionId]="'accordionExample'" [closeOthers]="true" [accordionItems]="basicAccordions"></spk-ngb-accordion>
    
    

ts


    import { Component } from '@angular/core';
        import { NgbAccordion } from '../../../@spk/spk-reusable-plugins/ngb-accordion/ngb-accordion';
    
        @Component({
            selector: 'app-accordions',
            standalone: true,
            imports: [NgbAccordion],
            schemas:[CUSTOM_ELEMENTS_SCHEMA],
            templateUrl: './accordions.html',
            styleUrl: './accordions.scss'
          })
          export class Accordions {
            basicAccordions=[
            { 
              title: 'Accordion Item #1',
              headingId: 'headingOne',
              collapseId: 'collapseOne', 
              collapsed: false
             },
      }
    
    
    

Ribbons :

The Angular Ribbon offers a simplified mode that organizes items and groups into a single row for improved usability and reduced clutter. End users can quickly navigate to other commonly used items in the overflow menu and switch to normal mode using built-in toggle button.

html


    <spk-ribbon-cards 
         [mainClass]="'custom-card'"
         [bodyClass]="'p-4'"
         [ribbonClass]="'ribbon-top-left'"
         [title]="'ribbon'"
         [textAlignment]="'mb-2 text-end'"
         [topTitle]="'Top Left Ribbon'"
        >
         <span>ribbon</span>
        </spk-ribbon-cards>
    
    
    

ts


    import { Component } from '@angular/core';
        import { RibbonCards } from '../../../@spk/ribbon-cards/ribbon-cards';
    
        @Component({
          selector: 'app-ribbons',
          standalone: true,
          imports: [RibbonCards],
          templateUrl: './ribbons.html',
          styleUrl: './ribbons.scss'
        })
        export class RibbonsComponent {
        
          }
    
    
    

Additional Plugins Included :

The following plugins have also been included, apart from the ones already listed in the above sections

Plugin Version URL
Angular v20.3.2 https://angular.dev/
ngx-sortablejs v15.0.0 https://www.npmjs.com/package/@maksim_m/ngx-sortablejs/v/15.0.0
Angular Bootstrap v19.0.1 https://www.npmjs.com/package/@ng-bootstrap/ng-bootstrap
Swiper v11.2.10 https://www.npmjs.com/package/swiper
Sweet alerts2 v11.22.3 https://www.npmjs.com/package/sweetalert2
nouislider v15.8.1 https://www.npmjs.com/package/nouislider
angularx-flatpickr v8.1.0 https://www.npmjs.com/package/angularx-flatpickr
ngx-color-picker v20.1.0 https://www.npmjs.com/package/ngx-color-picker
angular-calendar v0.31.1 https://www.npmjs.com/package/angular-calendar
ngx-filepond v7.0.3 https://www.npmjs.com/package/ngx-filepond
ngx-dropzone-wrapper v17.0.0 https://www.npmjs.com/package/ngx-dropzone-wrapper
ng-apexcharts v2.0.0 https://www.npmjs.com/package/ng-apexcharts
ng2-charts v8.0.0 https://www.npmjs.com/package/ng2-charts
ngx-echarts 20.0.2 https://www.npmjs.com/package/ngx-echarts
overlayscrollbars-ngx v0.5.2 https://www.npmjs.com/package/overlayscrollbars-ngx
ngx-editor v19.0.0-beta.1 https://www.npmjs.com/package/ngx-editor
ngx-owl-carousel-o v20.0.1 https://www.npmjs.com/package/ngx-owl-carousel-o
"@angular-slider/ngx-slider v20.0.0 https://www.npmjs.com/package/@angular-slider/ngx-slider
ngx-toastr v19.0.0 https://www.npmjs.com/package/ngx-toastr
@bluehalo/ngx-leaflet v20.0.0 https://www.npmjs.com/package/@bluehalo/ngx-leaflet
ngx-colors v3.6.0 https://www.npmjs.com/package/ngx-colors
@ctrl/ngx-emoji-mart v9.2.0 https://www.npmjs.com/package/@ctrl/ngx-emoji-mart
ngx-quill v28.0.1 https://www.npmjs.com/package/ngx-quill?activeTab=versions
Information
Need Help ?
Support Help Desk
Technical issues? Our support team is ready to help.
Pre-Sales
Have questions before purchasing? Contact our pre-sales team.
Pre-Sales Chat
Get immediate answers through our live chat support.
Preview