Pipet is a general analytical platform that can provide a simpler and more robust alternative to conventional CGI programming and HTML pre-processing. It combines elements of wikis and Web-based content management with those of visual programming.
***Essentially, multiple shell-script and Web-form components (referred to as "cells") can be merged into a single component, which can then be shared and used with additional components, which can then be merged into another, single component, etc., ad infinitum. We've referred to this as "compilation."
Pipet has the following user interface (front-end) features:
Users (with development access) can...
1. Select cells from anywhere on the local server or network
2. Add/remove cells and view them in the order of workflow
3. Click on cells in the workspace to get information and options
4. Re-order and mash-up cells
5. Save/re-load the new/modified cells (as XML)
6. Execute the cells (send the XML to the back-end)
7. Save the results of an analysis (in the user's account online)
On the back-end, Pipet can interface with existing, general-purpose queuing and workload management systems. There are a few internal functions to go along with this:
The system can...
1. Describe cells using XML
2. Set program parameters in XML
3. Insert program parameters into the cell description
4. Mash-up multiple cells with a single XML description
5. Store the XML on the filesystem
6. Convert the XML to a script and execute it using (optional) third-party software
7. Convert the XML to a Web form and send it to the front-end
This is all done in PHP, as the Web aspect is more important than direct compatibility with something like BioPerl.
Here's the original "Loci Project" (at one point renamed "Piper") home page. Check out the mailing lists to see all of the ideas discussed, many of which pre-date BioMOBY and myGrid/Taverna. Special thanks to the following for their correspondence over the years: Jay Painter, Konrad Hinsen, Justin Bradford, Thomas Sicheritz, Rahul Jain, Alan Williams, David Lapointe, Harry Mangalam, Carlos Maltzahn, Humberto Ortiz Zuazaga, Robert Harrison, Brad Chapman, Jennifer Steinbachs, Deanne Taylor, Gary Van Domselaar, Jarl van Katwijk, Jean-Marc Valin, and Nicolas Chauvat.
Of course, I'm always looking for help. If you have skills in PHP, MySQL and HPC, and would like to help, please contact firstname.lastname@example.org.