В этом году период присоединения к сообществу Google Summer of Code закончился 14 мая, и начался период программирования, поэтому я очень рад представить вам свой прогресс. Для высокоуровневого описания моего проекта с InterMine вы можете перейти в этот пост или прочитать мое предложение GSoC здесь :).

Сначала я настроил среду Node с помощью Express, чтобы начать создание браузера данных. Для представлений я использую механизм Pug, и код разделен на источники (папка / src) и обслуживаемый контент (в папке / public папка). Кроме того, для стилизации я использую SCSS, который позже компилируется в CSS и обслуживается. Для автоматизации задач был использован gulp, который автоматически вызывается перед запуском сервера с помощью команды npm start.

Если вы относитесь к тому типу людей, которые предпочитают говорить хорошо, но покажите мне код!, Я сэкономлю вам время, указав на репозиторий GitHub :).

Кроме того, для создания тестов я использую Mocha, Chai и Should, при этом использую Travis для непрерывной интеграции (CI).

Что касается текущих функций браузера, мы можем искать данные по конкретной шахте, которой является HumanMine, и в будущем, когда основные функции будут разработаны, мы добавим возможность поиска в других шахтах. Основными классами, которые может просматривать пользователь, являются Gene и Protein, которые можно изменить с помощью кнопок, доступных в верхней части страницы, что дает пользователю общий обзор. этих данных с помощью графика, который в настоящее время показывает распределение данных между различными организмами в шахте, и он отображается с использованием данных, полученных с помощью параметризованного маршрута Express, который вызывает InterMine с использованием библиотеки IM.js. Данные отображаются пользователю в виде im-таблицы с несколькими вариантами фильтрации и отображения сводки данных. Также, с целью облегчения взаимодействия пользователя с браузером, на левой боковой панели был добавлен фильтр по короткому имени организма.

Не стесняйтесь протестировать браузер самостоятельно, получив доступ к развертыванию Heroku, и если у вас есть какие-либо предложения, просто сообщите мне! :)

Если вам понравился пост, не забудьте подарить мне немного любви, нажав кнопку хлопков, я буду признателен;), и следите за обновлениями для следующего поста!