Skip to content

Console deep data comparator. Receives as input JSON or YAML files and returns the comparison to Stylish, Plain-text or Raw JSON formats. 

Notifications You must be signed in to change notification settings

buravlev-arthur/frontend-project-lvl2

Repository files navigation

Actions Status example workflow Maintainability Test Coverage

Описание

"Вычислитель отличий" сравнивает объекты и возвращает обнаруженные в них изменения. Программа работает в нескольких режимах, поддерживает два формата файлов и несколько форматов вывода результата сраванения.

Режимы работы

  • cli-утилита
  • js-библиотека

Поддерживаемые форматы файлов

  • json
  • yaml/yml

Форматы вывода результата сравнения

  • stylish
  • plain
  • json

Установка и запуск cli-утилиты

  1. Склонируйте репозиторий и, находясь в каталоге локального репозитория, установите все зависимости:
make install
  1. Добавьте исполняемые файлы программы в окружение Linux:
npm link
  1. Запустите программу, передав ей два файла для сравнения и указав формат вывода результата (последний можно опустить):
gendiff file1.json file2.yml -f plain
  1. Получите дополнительную справку:
gendiff -h

Установка и запуск js-библиотеки

  1. Склонируйте репозиторий и, находясь в каталоге локального репозитория, установите все зависимости:
make install
  1. Импортируйте библиотеку в свой проект:
import genDiff from '@hexlet/code';
  1. Используйте функцию:
const diff = genDiff(filepath1, filepath2, format);

Параметры функции:

  • filepath1, filepath2 - абсолютные или относительные пути к сравневаемым файлам;
  • [format] - формат возвращаемого результата сравнения. Может принимать значения: "stylish", "plain", "json". Необязательный параметр, по умолчанию - "stylish".

Демострация работы утилиты

Сравнение плоских JSON-файлов

asciicast

Сравнение плоских YAML-файлов

asciicast

Глубокое сравнение файлов

asciicast

Вывод сраванения в формете "plain"

asciicast

Вывод стравнения в формате "JSON"

asciicast

About

Console deep data comparator. Receives as input JSON or YAML files and returns the comparison to Stylish, Plain-text or Raw JSON formats. 

Resources

Stars

Watchers

Forks

Packages

No packages published