Доброго времени суток, читатели! В этом цикле статей я хочу описать опыт создания генератора для scaffolding системы Yeoman. Прежде всего, я был немного удивлён тем, что данная система и работа с ней не были описаны на хабре, разве что одно маленькое упоминание из далекого 2012 года: Yeoman.io. Как я уже написал выше, в данном цикле статей я буду рассматривать поэтапное создание yeoman-генератора для ваших проектов.
Читать полностью »
Рубрика «npm» - 11
Пишем генератор для Yeoman.io. Часть первая
2014-03-03 в 18:19, admin, рубрики: javascript, node.js, nodejs, npm, yeoman, метки: javascript, nodejs, npm, yeomanНесколько полезностей по работе с NPM
2013-12-19 в 16:00, admin, рубрики: javascript, node.js, nodejs, npm, tips, Веб-разработка, метки: nodejs, npm, tips 
Установка пакетов
Все знают
# Устанавливает пакет express
npm install express
Какие варианты еще есть?
yo n — быстрое начало для нового node.js проекта
2013-12-12 в 5:00, admin, рубрики: github, javascript, node.js, npm, метки: github, javascript, node.js, npmПривет, Друзья!
Я просто хотел поделиться с вами простым проектом, который, надеюсь, поможет сохранить несколько минут при создании очередного node.js пакета. Вот все, что сделает проект, после набора в командной строке yo n:
1. Запустит «npm init»
2. На основе ваших ответов из package.json, создаст файл с лицензией, readme, начальный файл и включит тестовый фреймворк.
3. Создаст и опубликует проект на GitHub'e.
А вот и видео всего описанного выше в действии:
Исходники на гитхабе: github.com/anvaka/generator-n
Особенности npm и хранение node_modules в git
2013-07-01 в 9:16, admin, рубрики: Git, javascript, node.js, npm, web-разработка, Веб-разработка 
Для управления зависимостями в проекте, node.js, как и многие другие платформы, предоставляет собственный пакетный менеджер — npm. И несмотря на то, что он внешне похож, например, на Ruby Gems, и вроде бы выполняет те же самые функции, npm обладает некоторыми особенностями, которые стоит учитывать при разработке приложений на node.js. Одна из таких особенностей — это способ хранения директории node_modules в проекте. Многие, по аналогии с другими системами, оставляют в проекте только package.json с зафиксированными версиями модулей, а node_modules добавляют в .gitignore. Такая стратегия не всегда верна, если мы обратимся в FAQ на npmjs.org, то увидим там следующее:
Q: Стоит ли хранить node_modules в git?
A: Mikeal Rogers очень хорошо ответил на этот вопрос:
http://www.mikealrogers.com/posts/nodemodules-in-git.html
tl;dr
- Храните node_modules в git для проектов, которые требуется разворачивать, таких как вебсайты и приложения.
- Добавляйте node_modules в .gitignore для библиотек и повторно используемых модулей.
- Используйте npm для управления зависимостями в dev окружении, но не в скриптах используемых для деплоя.
Под катом перевод статьи Mikeal Rogers, в котором подробно описывается, с чем связан такой непривычный подход.
Читать полностью »
Развиваем фронтенд Дневник.ру. Часть первая. Сборка и проверка JavaScript кода
2013-05-28 в 15:04, admin, рубрики: couchdb, grunt, javascript, node.js, npm, windows, Блог компании «Дневник.ру», дневник.ру, метки: couchdb, grunt, javascript, node.js, npm, windows, дневник.руВступление
За время существования Дневник.ру (а это более 4-х лет) скопился огромный объем JavaScript кода: часть находилась в отдельном проекте в виде подключаемых файлов, часть определялась прямо на разметке контролов, а часть собиралась прямо в code-behind при помощи StringBuilder. К этому прибавлялись:
- растущее количество HTTP запросов для получения статичного контента – так, например, на всех страницах только в теге <head> загружалось 11 JavaScript файлов;
- глобальные переменные, которые иногда перекрывали друг друга;
Решив, что с этим пора что-то делать, мы поставили себе первоочередную задачу: вынести все подключаемые по отдельности файлы из тега в один минифицированный пакет. При этом код делился на сторонний и «наш», который планировалось проверять каким-то синтаксическим анализатором.
В этой статье мы расскажем вам о том, как решили эту задачу, и, разумеется, не умолчим о проблемах, с которыми при этом столкнулись.
Читать полностью »
NPM для front-end разработки
2013-04-22 в 15:15, admin, рубрики: bdd, html, javascript, nodejs, npm, tdd, Веб-разработка, метки: bdd, html, javascript, nodejs, npm, tdd, фронтенд Недавно я задался вопросом поиска инструментария для разработки мобильных приложений на html/css. Из требований были: доступность, легковесность, простота настройки. Выбор пал на встроенный Node менеджер NPM. NPM содержит
инструментарий для базовых тасков типа install и запуска пользовательских скриптов. Также NPM не такой громоздкий, как Grunt и не требует адаптации модулей под себя, т.к. запускает модули с командной строки.
Управление front-end проектом с помощью NPM
2013-04-22 в 15:15, admin, рубрики: bdd, html, javascript, nodejs, npm, tdd, Веб-разработка, метки: bdd, html, javascript, nodejs, npm, tdd, фронтенд Недавно я задался вопросом поиска инструментария для разработки мобильных приложений на html/css. Из требований были: доступность, легковесность, простота настройки. Выбор пал на встроенный Node менеджер NPM. NPM содержит
инструментарий для базовых тасков типа install и запуска пользовательских скриптов. Также NPM не такой громоздкий, как Grunt и не требует адаптации модулей под себя, т.к. запускает модули с командной строки.

Типичная ситуация — в проекте существует некий модуль. Модуль развивается, становится самостоятельным элементом и копируется в другой проект. Потом еще один проект. И еще.
В каждом проекте модуль обновляется и улучшается, и, в какой-то момент, становится не понятно, где актуальная версия.
Да ладно, «не понятно где актуальная версия»! Вполне возможно, что в каждом проекте у модуля будут свои модификации, в которые будет достаточно сложно привести в порядок для использования в следующем проекте.
Вполне можно ограничиться созданием отдельного репозитория для модуля, например на GitHub или Bitbucket. Но добавлять репозиторий как субмодуль для GIT — это путь к приключениям.
Можно пойти дальше, и создать на основе такого модуля npm-пакет.
Работать с такими пакетами очень просто. Установить npm-пакет можно с помощью команды npm install, а обновить с помощью npm update.
Читать полностью »
Делаем жизнь проще, GruntJS (для новичков)
2013-04-21 в 5:58, admin, рубрики: gruntjs, javascript, node.js, nodejs, npm, метки: gruntjs, javascript, nodejs, npmЧто такое GruntJS
Большинство JS разработчиков уже используют какие-то инструменты компоновки для своих разработок, даже если не знают или не используют этот термин. Они объединяют файлы при разработке, уменьшают код JavaScript-а, чтобы ускорить загрузку страниц и конвертировать Sass, или уменьшают количество файлов в CSS для браузера, и много чего другого. Чаще всего это разные инструменты, что есть не очень удобно.
Grunt помогает управлять всеми этими шагами в одном месте и организовать сторонние компоненты.
Читать полностью »
Полный набор пакетов для разработки с помощью NodeJS
2013-01-07 в 20:36, admin, рубрики: javascript, Node, node.js, npm, метки: javascript, Node, node.js, npm Начал изучать NodeJS. Нигде не нашел актуальный стек библиотек (технологий) применяемых в node. Поэтому решил сам составить список.
Читать полностью »
