git clone https://github.com/pskucherov/learning
npm i
npm start
Если собралось и запустилось без ошибок, то сайт будет доступен по адресу: http://localhost:3000
В качестве базы данных используется MongoDB через ORM. Параметры подключения находятся в файле setting.js
Синхронизация моделей, данных в БД
node common.blocks/app/models/sync.js
Так как изначально использовался orm для mysql, после чего мигрировали на mongodb — часть новых методов orm не поддерживает, в следствии чего пришлось дописать в API проксирующий метод, который пробрасывает запрос из orm напрямую в БД. https://github.com/pskucherov/node-orm2/pull/1/files
- Orm: Object Relational Mapping
Запускаем тесты командой
npm test
Посмотреть покрытие контроллеров юнит-тестами
mocha test/unit/* --delay --require blanket --reporter html-cov > coverage.html && open coverage.html
- Mocha: Фреймворк для тестирования на nodejs
- Chai: BDD / TDD assertion library
- Chai as Promised: расширение Chai, для асинхронного тестирования
Кастомная сборка:
npm install lodash-cli -g && \
cd common.blocks/i-lodash/ && \
lodash include=isEmpty,get,assign,forEach,isUndefined,defaultsDeep,debounce,pick,map,trim,every,shuffle -p && \
mv lodash.custom.min.js i-lodash.js
Кастомная сборка:
Desktop:
http://jqueryui.com/download/#!version=1.11.4&components=1110100000000000000000000000000000000
jquery-ui.js -> common.blocks/i-jquery/__ui/i-jquery__ui.js
+ Touch Punch:
https://github.com/furf/jquery-ui-touch-punch/blob/8f7559b6e65cdc3ee3648d5fe76d38c653f87ff5/jquery.ui.touch-punch.js
jquery.ui.touch-punch.js -> common.blocks/i-jquery/__ui/_touch/i-jquery__ui_touch.js