open-index/open-npm huggingface dataset:
npm package: @ngcommerce/core
Description: Welcome to ngCommerce! ===================
Author: cyberadvancesystem@gmail.com
Latest version: 1.5.20

Welcome to ngCommerce!
===================


Installation
-------------

1. Install the npm package.
	```
    npm install @ngcommerce/core --save
    ```

2. Import `EcommerceCoreModule` in your application and use `forRoot('apiURL')` to choose your apiURL :

    ```typescript
    import { NgModule }            from '@angular/core';
    import { EcommerceCoreModule } from "@ngcommerce/core";

    @NgModule({
        imports: [EcommerceCoreModule.forRoot('http://test/api/') ]
    })
    export class AppModule { } 
    ```
Usage
-------------
Inject the `CorService` service anywhere you need it and use it like it's `alert` :
 
```typescript
@Component({})
export class MyComponent(){

    constructor(private service: CorService){
    
            alert(service.apiURL);

    }
}
```

The service offer a sub-list of `window.console` capacities :

 - Basics :
     - [Category](https://github.com/ngCommerce/core/blob/master/Documents/Category.md)
	     - CategoryModel
         - CategoryService
	     - IonListCategoryComponent
     - [Product](https://github.com/ngCommerce/core/blob/master/Documents/PRODUCT.md)
     - [Shop](https://github.com/ngCommerce/core/blob/master/Documents/SHOP.md)

NPM Step
-------------
npm run bundle

npm publish --access=public
npm package: @ngcore/auth
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/auth

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/auth @ngcore/core @ngcore/base
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreAuthModule } from '@ngcore/auth';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreAuthModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/base
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/base

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/base @ngcore/core
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreBaseModule } from '@ngcore/base';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreBaseModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/core
Description: ## Installation
Author: Harry Y
Latest version: 0.93.101

# @ngcore/core

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/core
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreCoreModule } from '@ngcore/core';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreCoreModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/data
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/data

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/data @ngcore/core 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreDataModule } from '@ngcore/data';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreDataModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```


### GlobalThemeHelper

In order to be able to use `GlobalThemeHelper`,
you will need to do the following:

#### Copy the `styles` folder to your app.

#### Add the folloiwn line in the header secion of the `index.html`:

    <link id="global-theme" rel="stylesheet" href="styles/empty-theme.css">


#### Modify the `app.module`'s constructor as follows:

    constructor( 
        @Inject(DOCUMENT) private document,
        private globalThemeHelper: GlobalThemeHelper
    ) {
        let theme = this.globalThemeHelper.getTheme();
        if (theme) {
            this.document.getElementById('global-theme').setAttribute('href', theme);
      }
    }



## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/hues
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/hues

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/hues @ngcore/core 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreHuesModule } from '@ngcore/hues';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreHuesModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```


### GlobalThemeHelper

In order to be able to use `GlobalThemeHelper`,
you will need to do the following:

#### Copy the `styles` folder to your app.

#### Add the folloiwn line in the header secion of the `index.html`:

    <link id="global-theme" rel="stylesheet" href="styles/empty-theme.css">


#### Modify the `app.module`'s constructor as follows:

    constructor( 
        @Inject(DOCUMENT) private document,
        private globalThemeHelper: GlobalThemeHelper
    ) {
        let theme = this.globalThemeHelper.getTheme();
        if (theme) {
            this.document.getElementById('global-theme').setAttribute('href', theme);
      }
    }



## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/idle
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/idle

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/idle @ngcore/core @ngcore/base
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreLazyModule } from '@ngcore/idle';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreLazyModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/lazy
Description: ## Installation
Author: Harry Y
Latest version: 0.6.71

# @ngcore/lazy

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/lazy @ngcore/core @ngcore/base
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreLazyModule } from '@ngcore/lazy';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreLazyModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/link
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/link

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/link @ngcore/core @ngcore/idle 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreLinkModule } from '@ngcore/link';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreLinkModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```


## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/mark
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/mark

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/mark @ngcore/core @ngcore/base
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreMarkModule } from '@ngcore/mark';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreMarkModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/mpdf
Description: ## Installation
Author: Harry Y
Latest version: 0.6.44

# @ngcore/mpdf

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/mpdf @ngcore/core @ngcore/base @ngcore/mark 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreMpdfModule } from '@ngcore/mpdf';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreMpdfModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/note
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/note

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/note @ngcore/core 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreNoteModule } from '@ngcore/note';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreNoteModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```


### GlobalThemeHelper

In order to be able to use `GlobalThemeHelper`,
you will need to do the following:

#### Copy the `styles` folder to your app.

#### Add the folloiwn line in the header secion of the `index.html`:

    <link id="global-theme" rel="stylesheet" href="styles/empty-theme.css">


#### Modify the `app.module`'s constructor as follows:

    constructor( 
        @Inject(DOCUMENT) private document,
        private globalThemeHelper: GlobalThemeHelper
    ) {
        let theme = this.globalThemeHelper.getTheme();
        if (theme) {
            this.document.getElementById('global-theme').setAttribute('href', theme);
      }
    }



## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/pdfx
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/pdfx

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/pdfx @ngcore/core @ngcore/base @ngcore/mark 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCorePDFxModule } from '@ngcore/pdfx';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCorePDFxModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/site
Description: ## Installation
Author: Harry Y
Latest version: 0.6.71

# @ngcore/site

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/site @ngcore/core @ngcore/lazy 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreSiteModule } from '@ngcore/site';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreSiteModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```


## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/time
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/time

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/time @ngcore/core 
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreTimeModule } from '@ngcore/time';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreTimeModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcore/view
Description: ## Installation
Author: Harry Y
Latest version: 0.91.103

# @ngcore/view

## Installation

To install this library, run:

```bash
$ npm install --save @ngcore/view @ngcore/core @ngcore/base @ngcore/auth
```

## Consuming the Library

From your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgCoreViewModule } from '@ngcore/view';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify the library as an import
    NgCoreViewModule.forRoot()
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once the library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use the library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Harry Y](mailto:sidewaybot@gmail.com)
npm package: @ngcorex/css
Description: Deterministic, governance-first design token engine with build-time CSS variable generation.
Author: arkdezin
Latest version: 0.2.9

# @ngcorex/css

![NPM Version](https://img.shields.io/npm/v/%40ngcorex%2Fcss?style=flat-square&logo=npm&labelColor=%23D50100&color=%23000) ![NPM License](https://img.shields.io/npm/l/%40ngcorex%2Fcss?style=flat-square) ![Static Badge](https://img.shields.io/badge/Github-Repo-blue?style=flat-square&logo=github) ![NPM Downloads](https://img.shields.io/npm/dm/%40ngcorex%2Fcss?style=flat-square&logo=npm&logoColor=%23ffffff&labelColor=%23D50100&color=%23000) ![GitHub Issues or Pull Requests](https://img.shields.io/github/issues/arkdezin/ngcorex)

Core engine for **ngCorex**.

This package provides:

- design token normalization
- constraint validation
- CSS variable generation
- optional CSS layer wrapping

It is intended to be used via the ngCorex CLI, not directly in applications.

## Installation

```bash
npm install @ngcorex/css
````

## Supported Token Categories

ngCorex supports the following design token categories:

| Category | Description | Example Values |
| ---------- | ------------- | ---------------- |
| `spacing` | Spacing scale for margins, padding, gaps | `"4px"`, `"1rem"`, `"0.5em"` |
| `colors` | Color palette with nested shades | `"#f3f4f6"`, `"rgb(37, 99, 235)"` |
| `radius` | Border radius values | `"4px"`, `"8px"`, `"16px"`, `"full"` |
| `zIndex` | Z-index layer values | `"1000"`, `"2000"`, `"3000"` |
| `typography` | Font properties (fontSize, fontWeight, lineHeight) | See below |
| `shadows` | Box shadow values | `"0 1px 2px 0 rgba(0,0,0,0.05)"` |

### Typography Sub-categories

| Sub-category | Description | Example Values |
| ------------- | ------------- | ---------------- |
| `fontSize` | Font size values | `"0.75rem"`, `"16px"`, `"1.25em"` |
| `fontWeight` | Font weight values | `"400"`, `"500"`, `"bold"`, `"700"` |
| `lineHeight` | Line height values | `"1.25"`, `"1.5"`, `"1.75"` |

## Token Source

Tokens can be provided either inline via configuration or from an external `tokens.json` file when using the ngCorex CLI.

External token files are the **recommended approach** for larger projects, as they keep design tokens portable, auditable, and framework-agnostic.

## Usage

This package is usually consumed internally by the CLI.

Example:

```ts
import { defineNgCorexConfig } from '@ngcorex/css';

export default defineNgCorexConfig({
  output: {
    file: 'src/styles/ngcorex.css'
  }
});
```

## License

MIT
npm package: @ngcx/contrib
Description: This project aims to provide reusable solutions for Angular projects.
Latest version: 0.0.5

# Overview
This project aims to provide reusable solutions for Angular projects.

## Getting Started
### Try it out
1. `ng new sample-project; cd sample-project`
2. `npm i @ngcx/contrib`

_app.module.ts_
```js
import { HeaderModule } from '@ngcx/contrib';
// ...
imports: [ HeaderModule ]
```
_app.component.html_
```html
<app-header>I'm Contributing!</app-header>
```


### Publishing
_specify exports_
1. Export the item(s) (e.g. components, pipes, services) to be made available from ./public_api.ts

_publish to npm_
1. `npm version patch` to increment the version ([more info](https://docs.npmjs.com/cli/version))
2. `npm run packagr` to generate the npm package
3. `npm publish dist --access public` to publish ([more info)](https://docs.npmjs.com/cli/publish)

_tag the release_
1. `git tag <version>`
2. `git push --tags` 

## What's Available
_coming soon_

## Contributing
If you'd like to contribute to this project, reach out to [Adam Clark](https://github.com/adamclerk).

## Dependencies
* [ng-packagr](https://www.npmjs.com/package/ng-packagr) - generates our npm package
npm package: @ngdangtu/jss-plugin-theme
Description: Help developer making website themes faster
Latest version: 0.1.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# JSS Plugin Scheme
This plugin is made on the idea "If I can get one variable and turn it to many value for various scheme".

## What is scheme
A scheme, or website theme or website skin, is (mostly) a set of color. We change scheme and the website changes its color which is effect on user experience of the site. The most noble example case is the **dark & light** scheme.

## A glance
Look at the sample code first:

Config:
```
export {
	registry: {
		dark: {
			main: {
				on: '#EEE',
				bg: '#333'
			}
			link: 'yellow'
		},
		light: {
			main: {
				on: '#111',
				bg: '#EEE'
			}
		}
	}
}
```

Before:
```
const styles = {
	body: {
		'background-color': 'theme:main.bg'
	},
	a: {
		color: 't:link'
	}
}
```

After:
```
#dark {
	background-color: #333;
}
#light {
	background-color: #EEE;
}
#dark a {
	color: yellow
}
```

In short, you will give the plugin a list of theme variables. And the plugin will generate theme selectors base on the list and URI you provided.


# How-to topic
## Installation
It is JSS plugin. So all we need is install it and import it. BEWARE! Plugin order matter, please place it before any plugin that modify CSS rule, property, value, etc... For some exapmle, camel-case, default-unit. In short, let's just **put it before of almost everything except plugin-nested**.

Install:  
```
npm i @ngdangtu/jss-plugin-scheme
```

To add it to JSS, see [JSS official document](https://cssinjs.org/setup#setup-with-custom-plugins). An example of installing the plugin:
```
import pluginTheme from '@ngdangtu/jss-plugin-theme'

jss.use(pluginTheme({
	registry: {/* variables of fonts, colors, etc. */},
	wishlist: /* Not ready */,
	flag: /* Not ready */
}))
```


## Usage

The minimun option is `registry`. It is your theme variables list. The list looks like this:
```
{
	'theme-name-1': {...variablesOne},
	'theme-name-2': {...variablesTwo}
}
```

To summon those variables in the stylesheet, use URI with schemes are `t` or `theme`. The URI path is separated by a dot `.`. Here is an URI sample:

```
theme:x.y.z
```

Which will access to:
```
{
	['theme_name']: {
		x: {
			y: {
				z: 'the value that will be get'
			}
		}
	}
}
```

... What a mess, I'll deal with it later ...
npm package: @ngdangtu/jss-to-css
Description: Make CSS static file from JSS
Latest version: 0.1.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# JSS To CSS
(This package currently is in Beta Stage / testing stage)
I made this to generate static CSS file from JSS in Node. It is limited but maybe useful for anyone need a static CSS file. (I use this one with Hugo to make static site btw.)

## Features
- Get CSS string from JSS
- Convert JSS to CSS file

## Installation
Please note that this package requires `jss` and `minimist` to run.

For local repository:
```
npm i -D @ngdangtu/jss-to-css
```

For global scope:
```
npm i -g @ngdangtu/jss-to-css
```

## More
Please see package's [wiki](https://gitlab.com/ndt-npm/jss-to-css/wikis).