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.
