Каркас

Каркас — это такая платформа для сайтов, которую написал я. Вы спросите, зачем я так заморачивался, когда есть столько бесплатных CMS? Тут несколько причин:
  1. я люблю прогать на Perl;
  2. рыться в чужом коде я не люблю;
  3. каждый веб-разработчик рано или поздо пишет свой движок для сайта :).

Технические детали реализации

  • Каркас написан на Perl с применением ООП. Требуются модули:
    1. Benchmark 1.07
    2. POSIX 1.08
    3. MIME::Base64 3.05
    4. Net::SMTP 2.29
    5. File::Copy 2.08
    6. Digest::MD5 2.33
    7. Storable 2.13
    8. File::Path 1.07
    9. DBI 1.48
    10. DBD-mysql 3.0002
    11. Image::Magick 6.0.7
    12. Crypt::DH 0.06
    13. Digest::SHA1 2.10
    14. URI::Fetch 0.08
  • Каркас использует СУБД MySQL 5.0.
  • Каркас везде использует кодировку UTF-8.
  • Каркас работает как CGI-приложение и под mod_perl 2.0.

На самом деле, ничего особо криминального. Всё легко ставится даже без админских прав.

Шаблонизаторство

Шаблоны HTML на внутреннем языке. Там есть циклы, условия, включения, установка и подстановка переменных и директивы использования тех или иных функций в модулях. Дизайн сайта может быть практически любой (но придётся делать свои шаблоны, УАХАХА)! Кстати, под каждый домен может использоваться разный набор шаблонов.
Шаблоны могут быть в нескольких комплектах: по одному на каждом языке + 1 дефолтный комплект. Это нужно для отдачи контента на нужном языке, который определяется по HTTP-заголовкам клиента.

Возможности

  • Типы контента: блог (лента новостей), текст, список ссылок, галерея, внешняя ссылка, форум, календарь, таблица с произвольным количеством колонок разных форматов.
  • Разделов может быть неограниченное количество, и они могут быть вложены друг в друга без ограничения по глубине.
  • Авторизация и аутентификация. Гибкая система раздачи прав пользователям (но не слишком детальная). Есть пользователи и группы. Права даются на разделы как пользователям, так и группам. Кстати, можно запретить самовольную регистрацию пользователей, т.е. регистрировать их сможет только администратор сайта.
  • Пользователи могут редактировать свои личные данные (которые расширяемы). Они могут посылать друг другу приватные сообщения.
  • Многие вещи можно скрывать от чужих глаз: разделы, сообщения, посты в блоге, картинки и т.п.
  • Есть поиск!

Модные фишки

  • Есть RSS и Atom как целиком по сайту, так и по разделам, а также по разделу с его подразделами
  • Метки (тэги) и рейтинги
  • Есть CAPTCHA
  • Каркас распознаёт предпочитаемый язык пользователя по Accept-Language
  • Есть wiki-подобная разметка сообщений
  • Есть каты (cut)
  • Поддержка AJAX
  • Человекопонятные URL

Что планируется приделать

Поскольку я человек, интересующийся Вебом и появляющимися хорошими стандартами, то стараюсь постоянно приделывать к Каркасу всякие полезные полезные штуки.
  • Надо бы сделать поддержку OpenID
  • Ну и тогда уж hCard на страницах профайлов пользователей
  • ...и может быть ещё пару-другую микроформатов
А ещё такая подлая вещь: в RSS и Atom отдаются только те записи, которые есть в разделах, доступных анонимным пользователям. Надо бы отдавать и тот контент, что виден и зарегистрированным пользователям, с них правда факт залогиненности потребуется. Это я исправлю как можно скорее.

Как можно поробовать эту платформу для сайтов?

Свяжитесь со мной, а уж при разговоре я подумаю, давать исходники или нет. Просто есть паранойя некоторая.

А пока писал этот текст, то успел прослушать два раз подряд альбом Napalm Death — Diatribes.


    Search: 
    Hello, Guest. ( Login / Create account )