Publishing your Tools on nanoHUB
This set of resources will start you on the path to publishing your own simulation tools on nanoHUB. If you get stuck, please use the "Need Help?" option in the upper right hand corner of the window and describe your situation as clearly as possible in a ticket.
By Michael McLennan
This presentation explains the benefits of running code on nanoHUB vs on a local computer, and gives pointers to getting started. Although some of the details of this 2008 presentation are dated, the basic message is timeless, and a fundamental reason for nanoHUB’s popularity. If you want to publish one of your own simulation tools on nanoHUB, the next step is to go through the NCN Bootcamp training - Creating and Deploying Scientific Tools.
nanohub.org lets you access simulation tools online via an ordinary web browser. Where do the tools come from? From you—hundreds of you throughout the world who are developing simulation/modeling tools for your hub. Anyone can upload their own code onto a hub and publish a tool for a limited group of colleagues or for the entire world to use. The code can be kept protected or given out as open source.
This course shows you exactly how to do that. It shows you how to use a “workspace” to forge new tools. It describes Rappture, the Rapid APPlication infrastrucTURE, a toolkit within the workspaces that makes it easy to develop graphical user interfaces for scientific modeling tools. Use the Rappture Builder to drag and drop objects that define your interface. The Builder will generate code for a variety of languages, including C/C++, Fortran, MATLAB, Octave, Python, Perl, Java, Ruby, and Tcl. The resulting application is easy to deploy on nanoHUB or any other HUBzero-powered site, so a large community of users can access it through their web browser. Learn how to contribute and publish a new tool, starting with a tool registration form, going through the process of uploading code into a Subversion repository, developing and testing your code within a workspace, and finally, approving and publishing your tool. Learn how to use the Rappture Regression Tester to verify that your tool is functioning correctly as you publish each new version your code.