January 8th, 2019

Front Web Framework: часть 1

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

  • Нашёл подход, с которым избавился от JS!!!
  • Опубликовал первую библиотеку (пока сырую) на hackage: fay-websockets (бинарник ещё не работает, тексты ходят).
  • Стал мейнтейнером yesod-fay, Снойман делегировал.
  • Стал мейнтейнером fay и всех сопутствующих, Адам Бергмарк делегировал.
  • Зафиксил оба два пакета, чтобы работали со стэком. Надо в апстрим выплюнуть изменения.
  • Взял последнюю страницу самопальной недо-CRM и переписал её на новом подходе, используя как метамодельку, так и прорабатывая фреймворк по ходу.
  • Двусторонний обмен сообщениями между клиентом и сервером — это очень и очень хорошо.
  • Shared Types — это здорово. В нём вся соль.
  • Server State. Она будет декларироваться пользователем.
  • View. Рендерится моделька посредством blaze-html (MarkupM).
  • Events. Ивенты генерятся сервером и проксируются на клиент. 
  • На клиенте тоненький рантайм (60 строк кода), умеющий как в рендеринг, так и в регистрацию ивентов.
  • (Де)сериализация данных в JSON от феечки. Fay API позволяет гонять данные прекрасно.

На очереди auto deriving, бинарный формат данных, вторая страница и многие другие приключения... 

По идее после публикации пакета под это дело надо бы по-честному пройтись и заменить весь накопленный Fay код на новый, огрести по ходу дела тысячу грабель и закалиться в бою. Поживём-увидим.

Tags: , , , ,