-
Notifications
You must be signed in to change notification settings - Fork 75
The scRNAtools app
The scRNA-tools app is an R
command-line application for interacting with the scRNA-tools database. It is designed to make it easy to contribute to the database while maintaining database integrity. The app is also used to build the scRNA-tools website.
After following the setup instructions the app can be run like so:
./scrntools CMD
Where command is the task you want to complete (described below). Run ./scrnatools --help
to see the possible commands and options.
Note: We recommend running the app using
./scrnatools
within the scRNA-tools repository directory rather than adding it to yourPATH
as it is only designed to work inside this directory and makes assumptions about where files are located.
The app has commands for performing various tasks. While they are briefly described here you also should refer to the contributing to the database page.
Usage:
./scrnatools add
The add
command is used to add a new tool to the database. It will take you through a series of prompts asking for the required information. The inbuilt checks should make sure that the information you supply matches what the database expects. At the end of the process the new tool will be saved to the database and the changes committed.
Usage:
./scrnatools update [<name>]
Arguments:
name
- Name of the tool to update
The update
command is used to update a tool in the database. If you have not supplied a name you will be asked which tool you want to update and then you can select which properties to change. When you are done updating the changes will be saved to the database and committed.
Usage:
./scrnatools search [<name>]
Arguments:
name
- Name of the tool to search for
The search
command looks for a tool in the database. If a single matching tool is found the details for that tool are printed, if multiple tools with similar names are found then just the names are returned.
Usage:
./scrnatools check [--all]
Options:
--all
- Whether to check all repositories (not just the new ones)
The check
command checks to see if any of the tools currently in the database match any packages recently added to some major software repositories. If any matches are found you will be asked to confirm whether or not they are correct. Please take a look at the package page on the repository website before making a decision.
Usage:
./scrnatools build
The build
command takes the current database and uses it to construct the scRNA-tools website. The build steps include updating citation counts, creating data files and producing analysis plots. The resulting files are for local use only and should not be committed.
Usage:
./scrnatools archive [<name>]
Arguments:
name
- Name of the tool to archive
The archive
command is used to remove a tool from the database. All the details for the tool are saved to the database directory in case it needs to be restored (although there is no guarantee that will be (easily) possible in the future).
Usage:
./scrnatools restore
Arguments:
arc
- The archive directory to restore
The restore
command is the opposite of archive
. It takes a tool that has been archived and attempts to restore it to the database.
Usage:
./scrnatools stats [--plot]
Options:
--plot
- Whether to show plots
The stats
command prints some basic statistics about the database. If the --plots
flag is set it also print some ASCII plots, similar to the analysis plots on the website.
Usage:
./scrnatools categories
The categories
command prints the current categories in the database and their descriptions.
Usage:
./scrnatools add_category
The add_category
command is used to add a new category to the database. It will take you through a series of prompts asking for the required information. The inbuilt checks should make sure that the information you supply matches what the database expects. At the end of the process the new category will be saved to the database and the changes committed. NOTE: Additional changes will need to be manually made to the website before the new category is properly displayed.