25 September 2014

[Подборка] Melchior.js, ng-admin, Hello.js, ineed

JavaScriptProgrammingNode.JS
Translation
Original author: Alex Young

Melchior.js


Melchior.js (GitHub: voronianski/melchior.js, Лицензия: MIT, npm: melchiorjs) от Dmitri Voronianski представляет собой реализацию цепочного определения модулей(CMD), концепцию, введенную John Wu.
Идея, кроющаяся за цепочными определениями модулей разрешает некоторые неприятные моменты AMD, такие как объемные объявления зависимостей, а так же обеспечивает простоту и читабельность с использованием визуально-дружелюбного и ясного синтаксиса.

Так же как CommonJS больше подходит для вне-браузерной среды, цепочные определения модулей с их требованиями, идеально вписываются во внутри-браузерные сценарии использования.


Вот пример использования данного программного интерфейса (API):

// create module
melchiorjs.module('yourModule')
	// define dependencies
	.require('dependencyUno')
	.require('dependencyDuo', 'duo')
	// define module body
	.body(function () {
		// `dependencyUno` is available here!
		dependencyUno.doSomething();

		// aliased `dependencyDuo` is available as `duo`!
		duo.doSomething();

		// return methods for other modules
		return {
			method: function () {
				//...
			},
			anotherMethod: function () {
				//...
			}
		};
});


Пояснительный(readme) файл содержит больше примеров среди которых имеется один для AngularJS. Данный программный интерфейс(API) выглядит более идиоматическим по сравнению с большинством модульных загрузчиков. Будет интересно посмотреть если данный продукт станет популярным.

ng-admin


François Zaninotto выложил информацию о ng-admin (GitHub: marmelab/ng-admin, Лицензия: MIT), это крутой проект который добавляет интерфейс администрирования к вашим RESTful CRUD — программным интерфейсам взаимодействия(APIs).

Вы сможете найти демонстрацию проекта на Amazon и документацию, которая показывает как настроить ng-admin для использования с сущностями вашего приложения. Данное решение способно справится с преобразованием(mapping) полей и со связями между сущностями. Связи могут быть 1-N, N-1, и N-M(many to many).

По мнению François, ng-admin полезен потому-что если вы создаете многочисленные проекты с различными бэкэндами (MongoDB, MySQL, Node, Python) вы все еще можете добавить «платформенно-агностический» интерфейс администрирования.

Этот-же автор реализовал gremlins.js.

Hello.js


Andrew Dodson выложил информацию о hello.js (GitHub: MrSwitch/hello.js, Лицензия: MIT, npm: hellojs), Клиентский комплект средств разработки(SDK) для аутентификации с OAuth2 (и OAuth1 через прокси oauth) веб-сервисами и выполнения запросов к их REST API. Данная библиотека представляет из себя, унифицированный интерфейс взаимодействия, нормализующий пути и ответы для сервисов Google Data, Facebook Graph и Windows Live Connect.

Одно из преимуществ hello.js заключается в его модульности. Здесь вы сможете найти модули для Dropbox, LinkedIn, SoundCloud, и Yahoo.

Программный интерфейс(API) модуля позволит вам определять такие вещи как функции jsonp, так что это должно быть достаточно гибко для того что-бы покрыть большинство современных сервисов.

Речь о HelloJS уже заходила на Hacker News, с обсуждением аспектов безопасности, и одобрениями от пользователей:

HelloJS хорош. Я использовал его в моем последнем проекте. Он всего-навсего работает. Он хорошо протестирован и документирован. Настройка не выглядит запутанной. Это просто сработало как по маслу, когда я пытался настроить учетные записи OAuth для Twitter, Google, LinkedIn и Facebook .

ineed


Ivan Nikulin написал о parse5, говоря что он имеет новый HTML-парсер в SAX-стиле на котором соответственно и зиждется проект ineed:

ineed позволяет вам собирать полезные данные с веб страниц, используя простой и приятный программный интерфейс. Давайте соберем изображения, ссылки, скрипты и стили со страницы www.google.com:

var ineed = require('ineed');

ineed.collect.images.hyperlinks.scripts.stylesheets.from('http://www.google.com',
  function (err, response, result) {
    console.log(result);
  });



Внутренне ineed использует потоки HTML символов(токенов), так что он не тратит время на построение и обход дерева DOM. Это выглядит идеальным решением для обработки множества различных, неудобных, выборочных задач.

Пометки


Здесь представлен перевод двух статей Alex Young. Во первая статья, и вот вторая. Спасибо за внимание.
Tags:программированиеjavascriptnode.jsweb-разработка
Hubs: JavaScript Programming Node.JS
+9
6.2k 61
Comments 5
Popular right now
Node.js Developer
from 1,600 to 4,200 $AWWCOR Inc.Remote job
Fullstack JavaScript Developer
from 180,000 to 220,000 ₽FoodtronicsМоскваRemote job
Team Lead (React\Node.js)
to 180,000 ₽SoftMediaLabЕкатеринбургRemote job
JavaScript разработчик
from 150,000 to 200,000 ₽SportrecsМоскваRemote job
Backend разработчик (Node.js)
from 100,000 ₽WazzupRemote job