Are you running or developing software that analyzes sequenced DNA? Help advance regulatory science, promote and discover Next-Generation Sequencing (NGS) software, and contribute to the growing precisionFDA community, by organizing a precisionFDA app-a-thon.
An app-a-thon is your own community event where you and your peers, collaborators or friends get together and add your favorite NGS software to the precisionFDA app library.
A precisionFDA app is a wrapper around NGS software, consisting of Linux executables and a specification of how to execute them in a Linux virtual machine. Apps can encapsulate any use case such as read mapping, variation calling, benchmarking, or simulations. Users on precisionFDA can try out these apps by running them directly on the cloud.
By contributing to the precisionFDA app library, you help introduce your favorite NGS software to the FDA and to the community. When others do the same, you collectively help build up the precisionFDA app library, enabling the greater precisionFDA community to explore, access, and try out all these apps directly on the cloud.
You also help disseminate the software in a portable manner, because users have the option of exporting the app as a Linux container (Docker) and running it in any other environment.
Think of how you want to organize your app-a-thon. Perhaps you are teaching a class and you'd like to devote a session or two to conduct an app-a-thon with your students. Or maybe you can invite your coworkers to stay in the office late one day and put apps on precisionFDA. Or you and your friends can connect online, and fiddle with precisionFDA over the course of two weeks. You can meet physically or virtually, and run the app-a-thon over any period of time, however short or long.
File an access request, indicating that you are planning to organize an app-a-thon. The FDA acts as steward to providing the precisionFDA service to the community, so your request will be initially pending. In the meantime, you will receive an email with a link to access the precisionFDA website in browse (guest) mode. Later, once the FDA approves your account request, you will receive another email with your contributor account information.
Scroll up and click "Host an app-a-thon". Give your app-a-thon a name, a location, and optionally a description. Choose an icon that will represent your app-a-thon, and adjust its start date to when you want the app-a-thon to start. (We recommend keeping the end date to the default of 2016-12-31 23:59:59, so that your participants have the opportunity to contribute additional apps even after you conclude your app-a-thon). You can always edit this information later, so don't worry if you don't get it perfect right away.
If you are the precisionFDA admin of your organization, and the app-a-thon members are from within your organization, visit your profile page and click "Provision new user under my organization". Enter the info (first name, last name, and email) for each user and provision them. Otherwise, ask them to file an access request, indicating that they plan to participate in an app-a-thon.
Ask your participants to prepare by using the "Participant Box". Since the app-a-thon is about adding NGS software to precisionFDA, you can also send them some software suggestions ahead of time so that they have an opportunity to decide what apps to create.
Customize your app-a-thon to fit your style and intentions. Order coffee or food if you are staying up late. Prepare name tags if people don't know each other. And most importantly: spread the spirit of contribution, community building, and team effort.
Well done, you contributed to the precisionFDA Appathon-in-a-box challenge! If you like, you can announce an internal winner for your app-a-thon. Your app-a-thon page includes a voting feature where participants can upvote any app. You can use that to elect the winner, or you can decide any other way you prefer (or not at all -- everybody is a winner after all).
If the app-a-thon's organizer is in the same organization as you, they may have already provisioned an account for you. Otherwise, file an access request, indicating that you plan to participate in an app-a-thon. The FDA acts as steward to providing the precisionFDA service to the community, so your request will be initially pending. In the meantime, you will receive an email with a link to access the precisionFDA website in browse (guest) mode. Later, once the FDA approves your account request, you will receive another email with your contributor account information.
Once the organizer registers the app-a-thon, it will appear below, in the list of precisionFDA app-a-thons. Visit the app-a-thon's page and click "Join". Note: this action cannot be undone, and you can only join one app-a-thon, so make sure you join the right one.
Read the Apps section of the documentation, and take a look at some of the Featured apps on precisionFDA. Click "Run" on any app to try it out, or "Fork" to take a look at its internals. Study the Creating Apps section of the documentation, which includes an introductory video on making apps. Pay particular attention to the concept of app assets; you will most likely need to package NGS software into such an app asset, as part of making your app. Take a look at some of the Featured assets, and peek in the archive contents tab, to understand the subdirectories you'll need to create under the fake root when making your own assets.
Think ahead of time of the NGS software you'd like to add as an app. Decide what will the app do -- what inputs will it ask for, how will it run the software, and what outputs will it provide. Get prepared: If you do not have access to a Linux environment, download the precisionFDA VM as mentioned in the documentation. You can also prepare and upload app assets ahead of time.
Once the app-a-thon has started, log into precisionFDA and click "Create App". (Only apps created after the app-a-thon start date can participate in an app-a-thon; if your app is older, fork it into a new one). Follow the steps to write a spec, define the VM environment (and create any assets if needed), write the shell script, and add documentation. Test your app by running it in a small input. Iterate as needed, editing and running again, until you are satisfied. You can also "Edit tags" to tag one or more categories that fit the app. When done, click "Publish" and publish the app and its assets. It will then appear in the app-a-thon's page, and in the list below.
Well done, you contributed to the precisionFDA Appathon-in-a-box challenge! Visit your app-a-thon's page to see apps created by the other members of your app-a-thon. You can also upvote any app or leave a comment on the app-a-thon.
Take a look at the list of apps produced by the app-a-thons below. You can try out each app by running it directly on the cloud, or you can export it as a Docker container to run on your own computer.
Are you in love with a particular app? Do you think it's innovative? Is it a fast/efficient algorithm? Does it look well-documented? Tell the world by clicking on the respective reaction buttons below.
Take a look at this 4-minute introductory video to get an idea of what the system is about.