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

Meteor.JS *

Веб-платформа на языке JavaScript

Сначала показывать
Порог рейтинга
Уровень сложности

Несколько тонкостей использования jade в Meteor-проектах

Время на прочтение4 мин
Количество просмотров5.8K
Некоторое время назад мне пришлось окунуться в Meteor. Несмотря на то, что javascript я не люблю, coffeescript еще больше, а node.js меня приводит в бешенство, Meteor очень быстро снискал моё признание и любовь. Я не работал с ним до версии 1.0+, насколько я знаю, там было достаточно много ужасов, однако сейчас, лично для меня, это очень удобный инструмент под небольшие интерактивные проекты. Потому очень хочется поделиться тем, что может облегчить использование данного инструмента другим людям.

Мой опыт работы с Meteor не такой большой, чтобы взять и начать что-то сложное раскладывать по полочкам. Однако я столкнулся с некоторыми вещами, побился о них головой и нашел какие-то решения. И в этой статье я хочу поделиться своими наблюдениями/советами по работе с jade в Meteor. К сожалению, с ним всё не так здорово, как с чистым jade-ом.
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии11

Установка MeteorJS на Raspberry Pi B+ под управлением Arch Linux ARM

Время на прочтение3 мин
Количество просмотров9.7K


Если найдётся ещё кто-нибудь, кто как и я вдруг решить использовать RPI в качестве домашнего или тестового сервера с развёрнутым meteor-приложением, надеюсь ему пригодится эта инструкция. Выбор пал именно на Arch Linux, поскольку, как мне известно, в настоящее время это единственный дистрибутив для платформы ARM, поддерживающий работу MongoDB на localhost.

Обычно я пользуюсь Mac OS X и Ubuntu, и это была моя первая встреча с Arch Linux, поэтому кое-какие процедуры вызвали вопросы и заставили покопаться в интернете. Возможно, кому-то эта инструкция покажется примитивной, но я хотел бы найти такую до того, как столкнулся с трудностями. Если вы найдёте неточность, ошибку или захотите что-то добавить — милости прошу в комментарии.
Читать дальше →
Всего голосов 10: ↑7 и ↓3+4
Комментарии0

Meteor. А теперь загрузка фоточек

Время на прочтение3 мин
Количество просмотров10K
Это же очень просто (ага, когда есть пример).

[демо] — мультизагрузка с линейками прогресса, требуется регистрация.
[исходники] — комментарии по коду ниже.
Читать дальше →
Всего голосов 12: ↑5 и ↓7-2
Комментарии7

Как мы дружили Neo4j и Meteor

Время на прочтение6 мин
Количество просмотров7.3K

Пишем драйвер поддержки графовой базы данных Neo4j для Meteor


В Meteor любая работа с даными связана с двусторонней реактивностью. На данный момент 100% реактивностью обладают встроенная в Meteor MongoDB и Redis (оба драйвера разработаны в стенах Meteor), частично реактивность реализована для MySQL и MSSQL (сторонними разработчиками).

Для вышеуказанных баз данных реактивность реализована посредством observer'ов, которые сообщают где, как, когда и какие данные изменились, для того чтобы драйвер, обслуживающий связь [данные <-> представление], знал какие данные и у каких Клиентов обновить. Neo4j лишен каких-либо watcher'ов и observer'ов, но это нас не остановило. Как мы вышли из данной ситуации и зачем нам нужен Neo4j читайте под катом.
Вперед за реактивностью!
Всего голосов 11: ↑10 и ↓1+9
Комментарии1

Истории

Большой список материалов для изучения Meteor.JS

Время на прочтение1 мин
Количество просмотров5K
Доброго времени суток, решил расширить познания в js фреймворках, выбор пал на Meteor.JS, не зная с чего начать, стал гуглить. Нашёл хорошую статью на Хабре тут.

image

Под катом содержание, почти весь материал на английском языке.
Читать дальше →
Всего голосов 18: ↑5 и ↓13-8
Комментарии0

Meteor. Как же запилить этот ваш iron:router для CRUD?

Время на прочтение2 мин
Количество просмотров7K
Элементарно! Но если бы мне показали подобную инструкцию раньше…

Задание


По запросу /profile без ключа отдаю шаблон login, если пользователь «не того», иначе отдаю шаблон на добавление newProfile или редактирование profile (editMode) своего профиля. А по запросу /profile/key отдаю шаблон на просмотр profile (not editMode) любого профиля; при этом userId не светится, и неверные ключи отвергаются на invalidProfile.

[исходник]
а дальше расскажу
Всего голосов 23: ↑19 и ↓4+15
Комментарии18

Meteor. Разрабатываем TODO List

Время на прочтение36 мин
Количество просмотров61K
В данном уроке я не хочу обсуждать, почему метеор убийца веба, тем более я так не считаю, но определенную симпатию к этому фреймворку имею. Поэтому хочу показать с чего можно начать при разработке приложения на нем, какие есть пакеты и вообще, что такое этот метеор.

Сразу хочу сказать, что у меня нет большого опыта в разработке веб приложений. Я занимаюсь этим всего около двух лет, а с метеором знаком вообще лишь пару месяцев.

Еще хочу предупредить, что урок получился достаточно объемным, но кода в нем было написано в разы меньше, чем текста. Просто хочу поделиться опытом как можно использовать метеор не при создании простенького примера, и заострить внимание на различных моментах, которые я посчитал важными. Поэтому в уроке будет использоваться множество сторонних пакетов, облегчающих процесс разработки.

И еще одно предупреждение: в данном уроке будут использоваться следующие технологии для непосредственного написания примера:

  • jade — html препроцессор;
  • less — css препроцессор;
  • coffeescript — язык программирования, компилируемый в javascript.

Видео, демонстрирующее приложение, полученное в ходе урока



И кому все еще интересно, добро пожаловать под кат.
Читать дальше →
Всего голосов 67: ↑59 и ↓8+51
Комментарии19

О Meteor подробно: почему это будущее веб-разработки

Время на прочтение4 мин
Количество просмотров22K

Что такое Meteor?


Это не очередной javascript фреймворк. Ставить его в один ряд с derby, sails, angular или backbone некорректно. Meteor — это платформа для создания модульных высокоинтерактивных клиент-серверных приложений. Пусть это звучит слегка напыщенно и напоминает маркетинговый булщит слоган, но зато по сути очень точно отражает миссию и текущее состояние Meteor. Буквально несколько дней назад Meteor API выпустил первую стабильную версию (1.0).

Официальную информацию можете почитать на портале www.meteor.com, а я же хочу рассказать об особо горячо любимых мной фичах.
Что же хорошего предлагает Meteor?
Всего голосов 50: ↑22 и ↓28-6
Комментарии73

Вышел Meteor 1.0

Время на прочтение1 мин
Количество просмотров11K
image

Внезапно вышел Meteor 1.0


Поздравляю всех с этим радостным событием, теперь есть очередной стимул попробовать эту full stack «магию» на вкус!
По сравнению с версией 0.9.4 особых изменений в коде нет.
Приведена в порядок документация.
Обновился сайт проекта.
Бесплатно доступна книга Discover Meteor.

Ссылки




Кстати
Интересно, что сам я узнал о новости не из дайджеста Zfort Group с Хабра (как это происходит у меня обычно).
А вот от этих замечательных ребят Code Hipsters
Всего голосов 33: ↑16 и ↓17-1
Комментарии31

Система пакетов в Meteor

Время на прочтение5 мин
Количество просмотров4.8K
Начиная с версии 0.9.0 (примерно пару месяцев назад) в Meteor обновилась система пакетов, созданная на основе Atmosphere. С выходом новой системы пакетов, каждому пользователю стали доступны создание и публикация собственных пакетов. По состоянию на текущий момент в системе более 1800 пакетов и насчитывается около 500 контрибьюторов.

Про сам Meteor, Meteorite и Atmosphere уже неоднократно писали на хабре, я же хочу поделиться опытом именно в создании пакетов для этого фреймворка.

Эта статья о том, зачем нужна очередная система пакетов, как ей пользоваться, как создавать, тестировать и публиковать пакеты.
Читать дальше →
Всего голосов 6: ↑4 и ↓2+2
Комментарии7

Книжка Discover Meteor переведена на русский

Время на прочтение2 мин
Количество просмотров22K

Автор картинки: Donovan Shortey, использовано по лицензии Creative Commons.

Познавательная книжка Discover Meteor теперь переведена усилиями сообщества на русский язык и находится в свободном доступе. Английская версия по-прежнему требует подписки и стоит (разумных) денег.

В начале марта авторы оригинальной книжки Sacha Greif и Tom Coleman бросили клич, приглашая любителей фреймворка MeteorJS перевести ее на все языки мира. Локализированные версии книжки выкладывались бы под свободной лицензией Creative Commons, свободно доступные для всех желающих быстро познать мир Meteor. В настоящий момент существуют переводы на 22 языка мира, в разной степени готовности. Проект доступен на GitHub, и если кто-то заметил опечатку, или желает как-то дополнить перевод — добро пожаловать в команду.
Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии22

Mylar — Платформа для защищенных веб приложений на базе Meteor.js

Время на прочтение1 мин
Количество просмотров7K
MIT опубликовал исходники проекта Mylar — платформы для создания безопасных приложений, с шифрованием и
поиском по зашифрованным данным.
Читать дальше →
Всего голосов 23: ↑17 и ↓6+11
Комментарии1

Разработка статического сайта на Meteor

Время на прочтение3 мин
Количество просмотров15K
Всем привет! Встретил статью о том, как на сайте meteor.com обеспечена работа для высоких нагрузок. Звучит это довольно интересно. (пер.)

Во-первых, зайдите на meteor.com и посмотрите, как это работает.

Мы все знаем, что meteor.com сделан на Meteor. Вы можете заметить, что загружается он очень быстро. Также, у него нет процесса загрузки — после того, как HTML построен, страница сразу отображается на экране.

Но как это возможно? Обычно, это занимает какое-то время — подключение к серверу, получение данных и отображение информации на экране. Может, Meteor использует какую-то магию с Galaxy?
Читать дальше →
Всего голосов 24: ↑16 и ↓8+8
Комментарии6

Ближайшие события

Weekend Offer в AliExpress
Дата20 – 21 апреля
Время10:00 – 20:00
Место
Онлайн
Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн

Тестируем MeteorJS-приложение с помощью Laika

Время на прочтение3 мин
Количество просмотров3.3K
Всем привет! Этот небольшой пост посвящен системе тестирования MeteorJS-приложений Laika от Arunoda Susiripala. Ее особенности довольно интересны:
  • Laika запускает свои тесты так же, как запускается реальное приложение (используется PhantomJS)
  • Каждый тест изолирован, т.е. заново запускается ваше MeteorJS-приложение с чистой базой данных
  • Вы можете использовать для разработки и meteor, и meteorite, laika прекрасно работает с ними обоими
  • Вы можете запускать проверку на сервере и клиенте в одном тесте. Это поможет протестировать такие моменты, как права доступа (permission), подписки (subscriptions) и вызовы методов (method calls)
  • Так как MeteorJS работает в реальном времени, то вам потребуется тестировать приложение при работе нескольких клиентов одновременно. Laika это может.
  • Возможность использования событий для более точного тестирования, т.е., фактически, эмуляция работы пользователя
  • Передача значений в код во время выполнения теста через аргументы
  • Ожидание окончания генерации шаблонов (templates)


Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

О безопасности в Meteor и не только (часть 2)

Время на прочтение9 мин
Количество просмотров8.8K
Если вас не испугала первая часть, предлагаю продолжить разговор о механизмах безопасности Meteor. Начав с loginToken, выдаваемого клиенту, правил allow/deny при модификации базы данных клиентом, коснемся доверенного и недоверенного кода, серверных методов, использования HTTPS и пакета force-ssl, пакета browser-policy (Content Security Policy и X-Frame-Options), и закончим встроенным механизмом валидации данных (функция check() и пакет audit-arguments-check).
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии8

О безопасности в Meteor и не только (часть 1)

Время на прочтение8 мин
Количество просмотров9.6K
Для разработки приложений фреймворка Meteor существует некоторое число приемов и средств, предназначенных для обеспечения безопасности. В первой части мы поговорим о более известных вещах — скрытии серверной части кода, пакетах autopublish / insecure, скрытии полей коллекций при публикации и встроенной системе учетных записей, заглянув внутрь коллекции Meteor.users. Во второй — про loginToken, выдаваемый клиенту, правила allow/deny при модификации базы данных клиентом, доверенном и недоверенном коде, серверных методах, HTTPS, пакете force-ssl и пакете browser-policy (Content Security Policy и X-Frame-Options), встроенном механизме валидации данных (функция check() и пакет audit-arguments-check).
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии3

Первые шаги к вселенной MeteorJS

Время на прочтение6 мин
Количество просмотров48K


Если вы интересуетесь клиентским программированием, то как и я, вероятно, могли слышать о Meteor, уже не новом веб-фреймворке, который относится к набирающим популярность, так называемым «фулл-стек» фреймворкам. О нем уже писали на Хабре, чтобы не дублировать информацию, можно почитать здесь или тут. Я довольно давно слышал о метеоре, но все никак не решался его пощупать. И вот, пришли очередные выходные, и я снова наткнулся на него. В этот раз я решил честно попробовать, что это такое. Может быть, этот пост даст кому-то небольшой толчок к началу изучения или хотя бы знакомства с этим инструментом. Тогда это было бы не зря.
Disclaimer: может вызвать зависимость.
Давайте же сделаем первые шаги к освоению meteorjs, добро пожаловать под кат.
Читать дальше →
Всего голосов 37: ↑32 и ↓5+27
Комментарии32

Вышел Meteor версии 0.7.0

Время на прочтение1 мин
Количество просмотров4.8K

Meteor.js — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Сегодня вышла версия 0.7.0 (в начале 2014 выйдет версия 1.0).

Основное изменение — поддержка MongoDb OpLog. Это дает возможность полноценного горизонтального масштабирования (см. мой перевод). В предыдущей версии Метеора, в случае нескольких серверов, обновления данных могли приходить с задержкой до 10 секунд — теперь такой проблемы нет.

Полный список изменений смотрите здесь.

П.С. На хабре появился новый хаб: Meteor.JS — подписывайтесь.
Всего голосов 20: ↑15 и ↓5+10
Комментарии11

Как масштабировать Meteor

Время на прочтение4 мин
Количество просмотров7.5K
От переводчика: MeteorJS — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Текущая версия 0.7.0 — в начале 2014 планируется выход версии 1.0. Публикации на хабре: 1, 2, 3.

Подготовка к масштабированию


Диаграмма компонентов:
image
Здесь три сервера Метеор, один MongoDb-сервер и HaProxy-сервер, как балансировщик нагрузки. Для поддержки SSL поставим Stud перед HaProxy.

Давайте обсудим компоненты и их настройку.
Читать дальше →
Всего голосов 28: ↑23 и ↓5+18
Комментарии3

Как устроен Meteor изнутри

Время на прочтение3 мин
Количество просмотров15K
От переводчика: MeteorJS — открытый (MIT) фулстек JavaScript фреймворк (и клиент и сервер). Текущая версия 0.6.6.3 — в начале 2014 планируется выход версии 1.0. Публикации на хабре: 1, 2, 3.

В статье обзор сетевой архитектуры Метеор-приложения.

Метеор как сервер, Метеор как клиент


Приложение Метеор, с точки зрения браузеров, прокси-серверов, маршрутизаторов и других сетевых компонентов, является, по сути, обычным веб-приложением. Хотя, на самом деле, Метеор-приложение состоит из двух главных частей: часть, которая работает внутри браузера и часть, которая работает как сервер. Эти две части настроены таким образом, чтобы взаимодействовать друг с другом способом, характерным для многих современных веб-приложений (таких, как Gmail или Trello)

image
Метеор позволяет разработчикам создавать приложения не заботясь о сложностях клиент-серверного взаимодействия.
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии16
Изменить настройки темы

Вклад авторов