О проекте
Проект представляет собой библиотеку узкоспециализированных инструментов для операций с датами, периодами и календарными данными. Наша цель – давать точный, предсказуемый результат при решении конкретных задач.
Архитектура
В основе сервиса лежит принцип "Один инструмент – Одна задача". Такой подход упрощает расчёты и делает работу удобной. Каждый модуль изолирован и решает строго определенную задачу. Пользователю не нужно изучать сложный интерфейс или искать нужные поля среди избыточных параметров. При этом инструменты не являются жестко фиксированными. В их структуру заложены настройки, необходимые для тонкой конфигурации вычислений в рамках конкретной задачи.
Логика вычислений
Календарь нельзя рассматривать как ровную числовую ось. В нём есть свои неровности – разная длина месяцев, високосные годы, региональные особенности. Наши алгоритмы построены так, чтобы корректно обрабатывать эти нюансы.
Для обеспечения математической точности в базовых алгоритмах применяется стандарт ISO 8601. Использование стандарта строго регламентировано: он применяется исключительно там, где это необходимо. В случаях, когда следование ISO 8601 не требуется, система опирается на региональные стандарты.
Для корректного представления данных и учёта региональной специфики задействован ICU (International Components for Unicode). Применение ICU не сводится к одному лишь отображению дат и времени по языковым стандартам: ICU участвует и в расчётной части. Благодаря этому обеспечивается точное определение, например, первого дня недели и выходных дней.
Доступ и обработка данных
Сервис полностью бесплатен и не требует регистрации. Все вычисления происходят в браузере пользователя, настройки и избранные инструменты сохраняются только в браузере. Данные не передаются на внешние серверы.
Благодарности
Выражаем признательность разработчикам проектов ICU и Day.js. Их библиотеки обеспечивают надежную математическую и лингвистическую основу для работы алгоритмов сервиса.