Framework

Репозиторий: 
git://iportnov.ru/framework.git

Это фреймворк (не очень высокого уровня, на настоящий момент) для создания web-приложений на Haskell.

Полная документация тут: http://iportnov.ru/files/framework/html/

Состоит он из следующих частей:

  • HTTP сервер (используется доработанный Network.Shed.Httpd)
  • Модуль для работы с Cookies
  • Модуль для работы с пользовательскими сессиями (в настоящий момент, данные сессий хранятся в файлах, но можно написать другой backend)
  • Модуль для кэширования чего угодно (бэкенды - filesystem, memcached и fake)
  • URL dispatcher
  • Модуль для работы с БД (использует HDBC, в настоящий момент полноценно работает только с PostgreSQL, sqlite3 поддерживает не все запросы)
  • EDSL для описания моделей данных (таблиц БД)
  • EDSL для формирования SQL-запросов по моделям данных
  • Templating Engine - шаблоны пишутся в отдельных файлах с синтаксисом a la Django, но при сборке приложения компилируются в результирующий бинарник
  • Подсистема обработки форм (генерация HTML формы по объекту, валидация форм, показ недозаполненной формы)

См. также текущую версию README.ru.

В директории Blog/ - тестовое приложение ("типо блог"), не надо предъявлять к его функционалу претензий, его задача - протестировать работу фреймворка.

Depends on cabal packages: hdbc, hdbc-mysql, hdbc-postgresql, hdbc-sqlite3, haskell-memcached, network, http, MissingH, Takusen, hgettext, data-hash.

RSS-материал