nrnb / GoogleSummerOfCode

Main documentation site for NRNB GSoC project ideas and resources
115 stars 39 forks source link

SBML-MINERVA support in Newt #207

Closed amazein closed 2 years ago

amazein commented 2 years ago

Background

Newt [1] is a Cytoscape.js based viewer and editor for biological maps in Systems Biology Graphical Notation (SBGN) notation [2] to create biological maps from scratch or edit existing ones. It's been built (with partial support from GSoC) around an editing library named ChiSE, which in turn was based on a viewer library named SBGNViz [3]. The tool uses a number of new Cytoscape.js extensions built for various editing capabilities such as grid-guidelines, context-menus, and expand-collapse. [1] H. Balci et al., "Newt: a comprehensive web-based tool for viewing, constructing, and analysing biological maps", Bioinformatics, 37(10), pp.1475-1477, 2021. [2] M. Sari et al., "SBGNViz: a tool for visualisation and complexity management of SBGN process description maps", PLoS ONE, 10(6), e0128985, 2015. [3] N. Le Novère et al., "The Systems Biology Graphical Notation", Nature Biotechnology, 27, pp. 735-741, 2009.

Goal

Currently, Newt supports SBGN (Process Description and Activity Flow languages) and SIF (simple interaction format) notations. The goal of this project is to support a new notation for graphically building models in SBML. SBML is not a graphical notation standard but visualisation can be based on SBML. An effort that provides such a graphical notation can be found in the MINERVA project. The notation In MINERVA is based on that of CellDesigner with certain modifications adjusted to the MINERVA data model. The proposed new notation in Newt will follow the MINERVA data model and the corresponding visualisation, with a possibility to convert it in Newt to the SBGN view similarly to how it is done as an option on upload in MINERVA or how it is implemented in CellDesigner as the SBGN Process Description View functionality. Potential further development is a plugin in MINERVA that would allow selecting a diagram or its part in MINERVA and with one click open it online in Newt for editing.

Difficulty Level: Hard

Size and Length of Project

350 hours. This project is expected to take the whole 22 weeks of a student's summer.

Skills

Essential skills: HTML, JavaScript, Cytoscape.js and its extension structure Nice to have skills: SBML, SBGNViz and ChiSE

Public Repository

Newt GitHub repository ChiSE GitHub repository SBGNViz.js GitHub repository

Potential Mentors

Alexander Mazein, Ugur Dogrusoz

khanhcodes commented 2 years ago

My name is Kaitlyn and I am a first-year undergraduate student majoring in Computer Science and Mathematics at the University of Georgia. I am very interested in joining your project (SBML-MINERVA support in Newt) for the summer and making contributions to the code. In terms of web development experience, I am familiar with HTML, CSS, Bootstrap, JQuery, and JavaScript for frontend development. For the backend, my skills include Node.js, Python, and Java. I am willing to learn Cytospace.js and SBML beforehand since I do not have much expertise in those two. Having experience in both software development and bioinformatics data analysis, I think my skill set would fit your project and I could have a chance to learn more. Please let me know how I can get started.

khanspers commented 2 years ago

A reminder that the application period opens on Monday April 4. Proposals to NRNB must be submitted on the official GSoC Site (https://summerofcode.withgoogle.com/) before April 19, 18:00 UTC to be considered, and contributors are encouraged to submit proposals in draft format early, so that mentors can give feedback directly at the GSoC site.

AlexanderPico commented 2 years ago

IMPORTANT REMINDER: GSoC 2022 is for new “beginners” to open source.

Applicants are expected to review eligibility requirements prior to applying. We can not accept applications from contributors with prior open source development experience. From the GSoC FAQ https://developers.google.com/open-source/gsoc/faq:

Can someone already participating in open source be a GSoC Contributor?

The goal of GSoC is to bring new contributors into open source organizations. GSoC can also help beginner contributors learn the ins and outs of open source while being mentored by experienced community members. GSoC is for new and beginner contributors to open source, it is not for experienced contributors to open source.

khanspers commented 2 years ago

Closing because this is an active project for GSoC 2022.