- PVSM.RU - https://www.pvsm.ru -

По причине «интересно», на досуге, собрал простой upnp/dlna сервер. Написанных на javascript найти не удалось, а идея кажется интересной: один исходный код для всех платформ (спасибо node-webkit [1]), javascript со всеми его достоинствами и недостатками, а также простота сборки. Можно легко собрать проект под все платформы в одной из них. Для этого написал скрипт на питоне [2], который все сделает сам, даже скачает необходимые файлы node-webkit. Хотелось снизить кол-во телодвижений необходимых для тех, кто захочет внести свою лепту в проект.
Скачать можно здесь [3], спасибо github за то, что вернули возможность хранить файлы. Умеют сделать людям хорошо. Еще немного текста можно найти под катом.
В качестве сервера использован молодой проект upnpserver [4], который сам по себе является законченным продуктом — сервер с интерфейсом командной строки. Для интерфейса выбрал reactjs [5] и всеми любимый bootstrap. Идеи на которых основан reactjs, мне кажется, чрезвычайно правильными. В чем я убедился на практике, замысловатая логика поведения интерфейса довольно легко реализуется и читается в последствии. Возможность не думать о состоянии DOM, а каждый раз генерировать его с нуля в функции render, действительно сильно упрощает жизнь.
Сейчас проект находится на очень ранней стадии, протестирован на уровне — вроде работает. Основные компоненты собраны вместе, для того, чтобы что-то дописать не нужно вникать в весь код проекта. Правда отсутствует ряд важных функций, например, сервер не умеет транскодировать, но необходимый модуль для nodejs существует.
Приглашаю всех желающих присоединиться к разработке на github [3].
Автор: vf1
Источник [6]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/56552
Ссылки в тексте:
[1] node-webkit: https://github.com/rogerwang/node-webkit
[2] скрипт на питоне: https://github.com/vf1/media-server/blob/master/nodewebkit.py
[3] здесь: https://github.com/vf1/media-server
[4] upnpserver: https://github.com/oeuillot/upnpserver
[5] reactjs: http://reactjs.org
[6] Источник: http://habrahabr.ru/post/214937/
Нажмите здесь для печати.