Closed cannin closed 3 years ago
Hello @cannin ! I've been working with REST APIs for a long time, I am able to navigate Java code (I have purely academic experience) and I've been helping with swagger-codegen in one of non-commercial projects in my current company. I don't know much about R, but I've done some course on code school and I'm willing to learn more about it. What can I do to increase my chances to be assigned to this gsoc project?
@superdyzio the end goal of this project is to produce a functional R package from the constructed Swagger API. A good project proposal will take this into account and address the necessary steps and identify what is needed components that an auto-generated Swagger API will be missing. To give a related use-case example for a project, called CBioPortal (that our group additionally works on):
Here is a Swagger API for a database (this API also needs to undergo a similar effort as the one for Pathway Commons):
http://www.cbioportal.org/api/swagger-ui.html
This is an existing R package to a legacy API that exists for CBioPortal :
https://cran.r-project.org/web/packages/cgdsr/index.html
Additionally, we need something well-tested; how will this occur?
Hi @cannin, I'm interested in this project. I have a strong background using R to build bioinformatics pipelines, and am comfortable navigating Java code as well. In addition, a major goal of mine is to build expertise in developing R packages. I'm not sure if I'm eligible for GSoC (I'm currently only taking a class at an extension school), but I would be interested in working on this project through NRNB academy. Could I send you a CV or some sample code?
Thanks for the interest. @alecplotkin send your CV to the email address in the project description.
Background
Pathway Commons is a database for biological interactions, it would be good to have Swagger (https://swagger.io/) specification for the API (http://www.pathwaycommons.org/pc2/) as it allows for easy generation of clients in many languages using the Swagger Codegen (https://github.com/swagger-api/swagger-codegen).
Goal
Generate the Swagger specification for the API and work to produce a R client for the API. The R Codegen (https://github.com/swagger-api/swagger-codegen) is relatively new and may require a lot of testing/debugging and possible code changes in the swagger-codegen project to make sure all functionality is available. A goal would be to have a place where users can test the API online similar to http://www.pathwaycommons.org/pcapi/
Getting Started
Swagger Tutorial
Example generated web interface
More complex Swagger example on a database similar to Pathway Commons (i.e. WikiPathways)
Pathway Commons API that needs to be transferred to Swagger
Swagger Codegen to Provide R Interface (this may have bugs that need to be dealt with)
Difficulty Level
Level 1
Skills
REST APIs (usage and testing) R (necessary) Java (some general ability to navigate Java code) Mustache (swagger-codegen uses Mustache templates to generate code)
Public Repository
Pathway Commons
Potential Mentors
Augustin Luna
Contact
Augustin Luna (aluna AT jimmy.harvard.edu)