Как стать автором
Обновить

Комментарии 45

а как оно с кластером работает? а то я так и не смог everyauth подружить, написал разрабам, бага так и весит по сей день(
можно хранить сессию авторизации в memcache, например
ну я хотел бы сессию хранить в редисе. но, почему-то не работает. вот подробнее:
stackoverflow.com/questions/13711346/node-js-everyauth-cluster-error
и как паспорт для третьего экспресса работает, все норм?
passport имеет собственный middleware passport.session, который работает поверх обычной сессии. Отлично работает с express 3
Спасибо, перешел на паспорт и заработала многопоточность!
Поверх node-optimist работает nconf — на случай заморочки опций, окружения и конфигов
Вместо should стоит использовать chai, он и в браузере работает.
А underscore заменить на lodash — то же самое, только быстрее + есть плюшки.
Хорошее замечание. Не обратил внимание, что should не поддерживает браузер
Я хотел список «мейнстримных» пакетов.
понял.

для поиска и сортировки по звёздочкам есть ещё удобный eirikb.github.com/nipster/, если вдруг.
Вот здесь всегда актуальный мэйнстрим http://nodetoolbox.com/
Да, неплохо. Категоризация местами хромает, но лучше чем ничего.
НЛО прилетело и опубликовало эту надпись здесь
Ещё node-postgres для тех, кому всё-таки нужны классические рсубд с sql, транзакциями, операторами и прочими такими штуками.
Вместо jade использую blade. Он как jade, только лучше:
  • работает на клиенте
  • поддержка meteor
  • удобное блочное наследование
Jade работает и на клиенте.

Кстати, его аналог в Ruby не Haml, а Slim.
Вся прелесть blade на клиенте, что можно использовать уже скомпилированные шаблоны с сервера. А это решает проблему этого комментария.
Jade тоже может использовать скомпилированные шаблоны с сервера. И данную проблему это никак не решает — не важно где будет тормозить — на сервере или клиента — тот же with в скомпилированных шаблонах.
Кстати, насколько я помню, у Jade есть опция работать без with (self).
НЛО прилетело и опубликовало эту надпись здесь
Хм, да и блочное наследование есть же в jade докучи к факту, что jade таки работет на клиенте (я вполне успешно юзаю).
Причем интуитивно оно мне нравится больше и выглядит богаче чем то, что описано в доке к blade (просто параметризированные блоки).

Из раздела Why use Blade instead of Jade? в документации, если честно, не вдохновил ни один пункт.

Несмотря на это, я верю, что там больше позитивных сторон, чем я смог увидеть при беглом осмотре. Просто требуется какое-то более фундаментальное сравнение с jade, а не фразы в документации вида
Jade is an ornamental stone. Blade is a badass vampire hunter
Для написания консольных приложений можно использовать coa.
optimist, перечисленный в статье, цепляет своей простотой.
Тут на вкус и цвет, как говорится. Мне он кажется слишком простым.
Главное, чтобы его производительности хватало для вас. Все-таки за его стиль можно многое простить :)
НЛО прилетело и опубликовало эту надпись здесь
Я так понял, что это разновидность control flow (futures). Показаыне примеры кода меня как-то не впечатлили. Может я чтол-то не понимаю…
НЛО прилетело и опубликовало эту надпись здесь
Спокойно, сейчас все станет ясно.
1. На сайте node-fibers жирным шрифтом выделено:
it is not recommended to use Fiber without an abstraction in between your code and fibers

2. Смотрим в качестве примера такой абстракции node-sync. Здесь уже с сахаром.
(Пардон, что второй раз в посте эта ссылка)
т. е. вместо
var res;
fs.readFile(fileName, function(err, data){
    res = data;
});

получаем
var res = fs.readFile.sync(fileName);

А если нужно что-то делать параллельно — используем вместо sync метод future и достаем результат через result getter
Я о том же хотел сказать, что futures это круто, но как-то синтаксического сахара не хватает…
Забыли про:
* SugarJS, лично мне он кажется более красивым, чем Underscore с его подчеркиванием, не вижу большого зла в расширении прототипов:)
* Moment.JS для работы с датами.
* Альтернатива кофескрипту — LiveScript для любителей функционального программирования с мощной стандартной библиотекой.
Противников прототипов расширения ощущаю на хабре я.
Тогда уж и babelfish.
По поводу control flow, очень удобное решение — node-sync (на базе node-fibers), да и знакомые используют.
PhantomJS is a headless WebKit with JavaScript API.
NowJS — удаленный вызов процедур.
nodeenv — Node.js virtual environment.
Хотя да, PhantomJS немного не в тему, но есть мост — phantomjs-node
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.