npm package: @omnisass/library
Description: Библиотека функций и миксинов, написанная на языке CSS-препроцессора Sass. Она предназначена для того, чтобы упростить, ускорить и улучшить процесс создания стилей для веб-сайтов.
Author: Murad Rustamov
Latest version: 0.5.0

[🇬🇧 English](./README.en.md)

<p align="left">
  <img src="https://sourcecraft.dev/file?owner=omnisass&repo=library&rev=anvil&path=.omnisass%2Fimages%2Fomnisass_logo_rounded.png" width="150" height="150" alt="Логотип проекта">
</p>

# OmniSass
> ВАЖНО: Библиотека сейчас проходит стадию тестирования. Вполне возможно, что до финальной версии 1.0.0 будут внесены изменения в API или удалены некоторые функции. Рекомендуется использовать её исключительно для ознакомительных целей.

Библиотека функций и миксинов, написанная на языке CSS-препроцессора Sass. Она предназначена для того, чтобы упростить, ускорить и улучшить процесс создания стилей для веб-сайтов.

![NPM Version](https://img.shields.io/npm/v/%40omnisass%2Flibrary?logo=npm&label=%40omnisass%2Flibrary&labelColor=%23CB3837&color=white) ![NPM Downloads](https://img.shields.io/npm/dw/%40omnisass%2Flibrary?logo=npm&logoColor=white&labelColor=%23CB3837&color=white) ![NPM Last Update](https://img.shields.io/npm/last-update/%40omnisass%2Flibrary?logo=npm&logoColor=white&labelColor=%23CB3837&color=white) ![NPM Collaborators](https://img.shields.io/npm/collaborators/%40omnisass%2Flibrary?logo=npm&logoColor=white&labelColor=%23CB3837&color=white) ![NPM License](https://img.shields.io/npm/l/%40omnisass%2Flibrary?logo=ReadMe&logoColor=white&labelColor=%23018EF5&color=white) ![NPM (prod) Dependency Version](https://img.shields.io/npm/dependency-version/%40omnisass%2Flibrary/sass?logo=Sass&logoColor=white&labelColor=%23CC6699&color=white)

OmniSass представляет собой обширный, стандартизированный и тщательно задокументированный пакет, включающий решения, годами собранные сообществом.

Большинство функций и миксинов — результат работы множества людей, которые в разное время занимались разработкой на языке Sass. Разработчик OmniSass ([@therteenten](https://t.me/therteenten)) сосредоточился на качественной стандартизации, документировании и создании единого инструмента на базе разрозненных элементов.

## Установка библиотеки
1. Для работы OmniSass необходимо, чтобы была установлена библиотека [`sass`](https://www.npmjs.com/package/sass):

    ```shell
    npm install sass
    ```

2. После завершения установки вы можете добавить библиотеку [`@omnisass/library`](https://www.npmjs.com/package/@omnisass/library):

    ```shell
    npm install @omnisass/library
    ```

3. Готово! OmniSass готов к использованию.

## Использование
Вы можете внедрить модуль в ваш файл стилей после установки необходимых библиотек:

```scss
@use '@omnisass/library' as omnisass;
```

1. Мы испортируем модуль `@omnisass/library`
2. Вся "начинка" модуля доступна в пространстве `omnisass`

Затем мы применяем одну из функций из библиотеки. Например, `is-boolean`:

```scss
@debug omnisass.is-boolean(true);
```

В консоли мы получаем:

```shell
src/styles/main.scss:3 Debug: true
```

Готово. Мы успешно установили, импортировали и использовали библиотеку в проект.

> При компиляции Sass без ключа `--load-path=node_modules` для импорта модуля нужно указать полный путь к папке библиотеки. В нашем случае, если файл styles.scss находится в директории ./src/styles/, следует использовать следующую конструкцию: `@use '../../node_modules/@omnisass/library' as omnisass;`.

## Полезные ссылки
- [Документация API (SassDoc)](https://omnisass.sourcecraft.site/sassdocs/)
- [Организация на SourceCraft](https://sourcecraft.dev/omnisass/overview)
- [Канал в Telegram](https://t.me/omnisass)
- [Список изменений](https://sourcecraft.dev/omnisass/library/browse/CHANGELOG.md?rev=develop)

## Благодарности
- [github@takamoso](https://github.com/takamoso) - за функции `is-boolean`, `is-list` и др.
- [github@KittyGiraudel](https://github.com/KittyGiraudel) - за функции `color-shade`, `color-tint` и др.
- [github@sindresorhus](https://github.com/sindresorhus) - за функции `get-list-item-end`, `get-list-item-start` и др.
- [github@selfishprimate](https://github.com/selfishprimate) - за функцию [`is-time`](https://github.com/selfishprimate/gerillass/blob/master/scss/utilities/_is-time.scss) и др.
- [github@pentzzsolt](https://github.com/pentzzsolt) - за функцию `is-int` и др.

> Если я забыл вас упомянуть в этом списке, то прошу написать мне на [Telegram](https://t.me/therteenten).

## Лицензия
Этот проект лицензирован под лицензией MIT - подробности см. в файле [LICENSE](LICENSE).
```
MIT License

Copyright (c) 2025, Murad Rustamov (therteenten) <therteenten@ya.ru>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```