Рубрика «javascript library» - 3

BabelFish

Интернет приносит в нашу жизнь глобальность. И многие веб-ресурсы не ограничиваются аудиторией, живущей в одной стране и разговаривающей на одном языке. Однако, поддержка нескольких языковых версий сайта вручную — затея малоприятная и, начиная с определённого масштаба, вряд ли реальная.

Например, в REG.RU на сегодня в словарях более 15000 фраз, из которых порядка 200 используют склонение, и более 2000 используют подстановку переменных. Каждый день добавляется не менее 10 фраз. И это при том, что мы пока только начали локализацию сайта и впереди планы на новые языки.

Хотя задачи интернационализации и локализации программного обеспечения (в том числе в веб) не новы, и, в целом, довольно стандартны, хороших универсальных инструментов для их решения не так много. И подобрать такой инструмент для конкретного стека клиентских и серверных технологий не всегда просто, особенно если хочется использовать один и тот же инструмент и там, и там.

DON'T PANIC.

Недавно был опубликован пакет BabelFish 1.0, предназначенный для интернационализации JavaScript-приложений.

Идеи, лежащие в его основе, настолько пришлись нам по душе, что мы даже перенесли их на Perl в виде CPAN-модуля Locale::Babelfish, и используем это для Perl-приложений. Но вернёмся к JavaScript-реализации.
Читать полностью »

Приветствую вас, сообщество!

Хочу предложить вашему вниманию, все таки доведенную до определенной точки, свою библиотеку для визуализации данных blackHole.js использующую d3.js.
Данная библиотека позволяет создавать визуализации подобного плана:
картинки кликабельные
image или BlackHole.js с привязкой к картам leaflet.js

Статья будет посвящена примеру использования blackHole.js совместно с leaflet.js и ей подобными типа mapbox.
Но так же будут рассмотрено использование: google maps, leaflet.heat.

Получится вот так =)
BlackHole.js с привязкой к картам leaflet.js

Поведение точки зависит от того где я находился по мнению google в определенный момент времени

Посмотрите, а как перемещались вы?...
Читать полностью »

PassGenJS. Генерируем пароли в Javascript с указанием надёжности

В одном проекте появилась необходимость генерации надежного пароля на клиенте. Поискал готовое решение, но ничего подходящего не нашел.
Все библиотеки, которые нашлись, не подходили по ряду причин — генерировали пароль просто по желаемой длине, отсутствовала возможность проверки надёжности пароля. Решено было писать свой «велосипед» — как альтернативное решение, да и опыт лишним не будет. В итоге получилась библиотечка PassGenJS.

Что под капотом:

  • Нет зависимостей
  • Генерация пароля по указанным параметрам (число букв, цифр, символов и т.д)
  • Генерация пароля по величине надёжности (1 — слабый, 4 — сверхнадёжный)
  • Генерация пароля по % надёжности (от 0 до 100%)
  • Проверка надежности пароля через вычисление энтропии

Приведу несколько примеров:

Генерируем надёжный пароль:

PassGenJS.getPassword({score: 3});
// Результат - 8!G$}6&={a(_>

Читать полностью »

Всем привет!

Когда дело доходит до разработки веб-сайта, больше всего внимания следует уделить деталям, которые будут способствовать тому, что пользователь захочет остаться на сайте и исследовать его. Есть несколько способов сделать это, начиная от создания красивого эффекта параллакса до анимации всех видов элементов на сайте.
Сегодня я решил поэкспериментировать с этим и объединил анимацию изображения с прокруткой и вот что получилось. Представляю вашему вниманию небольшой плагин jQuery Zoom Scroller, который позволит вам добавить привлекательный эффект зума для изображений во время прокрутки. Идея состоит в том, чтобы, будучи не слишком навязчивым, привлечь внимание пользователей, когда они прокручивают вниз.

Примечание: этот плагин был испытан на Chrome, Firefox и Safari, мобильных и десктопных версиях.

Создаем Zoom анимацию при прокрутке с помощью jQuery.Zoom Scroller.js

Читать полностью »

Сегодня я хотел бы анонсировать js-фреймворк, позволяющий создавать диалоговые микро-приложения в несколько строк js-кода, разделяемого между клиентом и сервером.

WidLib – декларативный js фреймворк для построения виджетов

Идея простого, удобного и специализированного под диалоговые решения фреймоворка родилась после нескольких лет работы нашей команды с интерактивными приложениями. Нам хотелось создать простой конструктор интерактивных виджетов, не перегруженный сложным функциналом и максимально заточенный под конкреную задачу. В итоге мы пришли к решению перекроить наши наработки и немного изменить концепцию продукта.

В отличие от большинства фреймворков, WidLib не претендует на универсальность: он предназначен для быстрого создания многостраничных диалоговых приложений.
Читать полностью »

На тему шаблонизаторов статей написано великое множество, в том числе и здесь, на хабре.
Раньше мне казалось, что сделать что-нибудь своё — «на коленке» — будет очень сложно.
Но, случилось так, что прислали мне тестовое задание.
Напиши, мол, JavaScript шаблонизатор, вот по такому сценарию, тогда придёшь на собеседование.
Требование, конечно, было чрезмерным, и поначалу я решил просто игнорить.
Но из спортивного интереса решил попробовать.
Оказалось, что не всё так сложно.

Собственно, если интересно, то под катом некоторые заметки и выводы по процессу создания.

Для тех, кому только глянуть: the result, the cat.

Читать полностью »

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

А мы идем далее.

Безлимит

В конторе в которой я работаю появилась необходимость использования индексированной локальной базы данных на стороне клиента и выбор сразу пал на IndexedDB.

Но как всегда есть одно «НО», это самое «НО» — ограничение размера БД на машине пользователя в размере 5 МБ, что отнюдь нас не устраивало. Так как данная технология планировалась использоваться в админке нашего проекта и все юзеры использовали в качестве дефолтного браузера Google Chrome, то было принято решение поиска обхода того самого ограничение через расширение-прокси. Перелопатив много инфы мы пришли к выводу, что ограничение на размер БД можно убрать использовав специальные флаги в манифесте нашего расширения:
Читать полностью »

ChartJS — JavaScript библиотека визуализации данных

С каждым годом мир вычислительной техники всё больше и больше переползает в глобальную паутину. HTML5 шагает по планете, и пока никаких признаков замедления его развития и распространения не заметно. Кажется, даже холодильники скоро начнут понимать HTML5!

Мы в DevExpress как никто чувствуем эту тенденцию. И хорошо поработали в этом году!

читатели уже знает о нашем новом фреймворке PhoneJS, которой позволяет опытным веб-разработчикам чувствовать себя уверенно и в разработке для мобильных устройств.

Однако и классическую сторону веб-разработки мы не забыли.

Люди по-прежнему получают информацию из интернета.
К сожалению, эти же люди по-прежнему не любят читать долгие и нудные отчеты.
Картинка стоит тысячи слов.

Живая картинка, взаимодействующая со смотрящим её человеком, бесценна.

Чтобы веб-разработчики могли показать своим клиентам живые чарты, мы создали библиотеку визуализации данных ChartJS.
Читать полностью »

Здравствуйте.

Хочу поделиться с вами одной техникой организации кода при массивной работе с DOM-элементами. Несколько лет назад, когда еще вовсе не было бэкбона и MVVC, мы писали старый добрый джаваскрипт без фреймворков: создавали объекты и заставляли их плясать на странице в общем танце. Такая практика, без сомнения, до сих пор оправдывает себя, и техника, о которой пойдет речь, применима именно к ней.

Мой рассказ — о маленькой библиотечке PageObject.js (текущая версия v0.14, 2.6K) и о том, как с ее помощью можно упростить себе жизнь.
Читать полностью »

Здравствуйте, Читатели.

Мал по-малу из моего опыта и наших проектов родилась небольшая библиотека для работы с моделями в джаваскрипте. Она так и называется — Model.js.

Я расскажу вам вкратце об этой библиотеке и этим постом запрашиваю обратную связь у тех, кто создавая сложные джаваскрипт-приложения, уже решает эту проблему каким-то определенным образом без фреймворков. Интересно также и мнение тех, кто только подыскивает подходящий инструмент для своих нужд: какой инструмент вам нужен и насколько вам подходит Model.js?
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js