CSV Builder for nf-core/proteinfold
Necessary Disclaimers and Legal
The user is responsible for reviewing and complying with the license requirements of the software, and data referenced in this documentation.
Users are responsible for the costs associated with analyzing data, software and its storage in their project spaces.
Instance type availability and pricing are subject to the contract between the user or the user's organization and DNAnexus.
Overview
Preparing a samplesheet input file for nf-core/proteinfold requires understanding the pipeline's input schema, writing file paths in the correct DNAnexus format, and ensuring all values pass validation. This process is time-consuming and error-prone, especially for new users.
The CSV Builder for nf-core/proteinfold is a lightweight GUI applet on DNAnexus that helps users create a pipeline-ready samplesheet without any programming. It validates inputs against the pipeline schema, converts selected files into the correct dx:// file path format automatically, supports both manual entry and prefilled metadata (.csv) upload, and saves the output samplesheet directly to the user's DNAnexus project.
This applet is dedicated to nf-core/proteinfold and supports two pipeline versions: v1.1.1 and v2.0.0. The key difference between the two supported versions is the name of the first required column:
Pipeline version
Column 1
Column 2
Accepted FASTA examples
v1.1.1
sequence
fasta
.fa, .fasta
v2.0.0
id
fasta
.fa, .fasta
Note: Both columns must not contain spaces.
Official nf-core documentation:
Interface Overview
The applet has two tabs: INPUTS and OUTPUTS. All configuration is done in the INPUTS tab.
prefilled samplesheet uploads an existing .csv file containing sequence names and file references. Use this when you have already prepared a metadata file.
fasta selects one or more FASTA files directly from your project on DNAnexus platform. Use this when you do not have a prefilled samplesheet.
Proteinfold pipeline version determines which pipeline version the applet validates against: 1.1.1 or 2.0.0. This also determines which column name (sequence or id) is used in the output.
id / sequence accepts sequence names or IDs entered manually, one per file, separated by commas. If left empty, the applet extracts the name automatically from the filename. Use id for v2.0.0 and sequence for v1.1.1.
output_samplesheet_name sets the name of the output .csv file. If left empty, defaults to sample_sheet.csv.

Copying the applet and example dataset into a project
To get started, copy the applet and example dataset from the public project into your own project space.
Create a project for your analysis, billed to your own organization. Tutorials on how to set up a project can be found on this page
Navigate to the Resources tab and locate the project titled "Public Datasets AWS US (East)", then go to nf-core_input_csv_builder.

Next, go to folderproteinfold_csv_builder, then select the applet proteinfold_samplesheet_builder_v0.1.1, and the proteinfold_example folder.
Click Copy in the top-right menu and select the project created in Step 1.

Return to your project space to begin using the applet.
Quick start
Launch the applet proteinfold_samplesheet_builder_v0.1.1 from the DNAnexus GUI
Click the fasta field and navigate to nf-core_input_csv_builder/proteinfold_example/fasta/. Select the FASTA files you want to include.

Choose proteinfold pipeline version 2.0.0.
Enter an output name in the output_samplesheet_name field.
Choose your output destination, keep the default instance and launch the job.

The job takes approximately 2 minutes. Once the job is complete, verify the following:
Job status shows Done
Log file contains no errors or warnings related to the samplesheet

Output CSV columns match the v2.0.0 schema (id, fasta)

To confirm the output samplesheet works with the pipeline, run a quick verification using nf-core/proteinfold v2.0.0 with the test and docker profiles.

For more detailed examples including prefilled samplesheets, manual ID entry, and error scenarios, see the Example jobs section.
Input Flows
The applet supports two ways to provide input data:
Prefilled samplesheet: upload an existing CSV file that follows the target pipeline's schema. The applet will parse and validate the file, resolve all file references into dx:// paths, and produce the final output samplesheet.
Manual input: enter data directly into the applet. Values can be provided as an array (multiple values separated by commas) or as a constant (a single value that will be replicated across all rows). FASTA files can also be selected directly from DNAnexus.
Note: Users should choose only one input source. If both a prefilled samplesheet and FASTA files are provided simultaneously, the applet will prioritize the prefilled samplesheet and ignore the selected FASTA files.
File path format
When preparing a prefilled samplesheet or entering file references manually, you can use any of the following formats.
Files in the same project as the applet:
Format
Example
File ID
file-J8x7YY808qvyZzBPVz3Yx9yk
File name
T1024.fasta
Relative path
proteinfold_example/fasta/T1024.fasta
Absolute path
/nf-core_input_csv_builder/proteinfold_csv_builder/proteinfold_example/fasta/T1024.fasta
File ID with project
projects/J67fG1j08qvfJyBX4G7Gk3Yf:file-J8x7YY808qvyZzBPVz3Yx9yk
Absolute path with project
project-J67fG1j08qvfJyBX4G7Gk3Yf:/nf-core_input_csv_builder/proteinfold_csv_builder/proteinfold_example/fasta/T1024.fasta
Full URI
dx://project-J67fG1j08qvfJyBX4G7Gk3Yf:/nf-core_input_csv_builder/proteinfold_csv_builder/proteinfold_example/fasta/T1024.fasta
Files from another project (project ID is required):
Format
Example
File ID with project
projects/J67fG1j08qvfJyBX4G7Gk3Yf:file-J8x7YY808qvyZzBPVz3Yx9yk
Absolute path with project
project-J67fG1j08qvfJyBX4G7Gk3Yf:/nf-core_input_csv_builder/proteinfold_csv_builder/proteinfold_example/fasta/T1024.fasta
Full URI
dx://project-J67fG1j08qvfJyBX4G7Gk3Yf:/nf-core_input_csv_builder/proteinfold_csv_builder/proteinfold_example/fasta/T1024.fasta
Regardless of input format, all file references are resolved and written as full dx:// URIs in the output samplesheet.
Example jobs
Example 1: Providing input via prefilled metadata (samplesheet)
Scenario: A user has already prepared a CSV file with sequence names and FASTA file references and wants to use it directly as input to the applet.
Example file: proteinfold_v1.1.1_input_metadata.csv in folder: /nf-core_input_csv_builder/proteinfold_example/metadata_example/
sequence,fasta,comment
T1024,/nf-core_input_csv_builder/proteinfold_example/fasta/T1024.fasta,multiple files in project so need to have absolute path
T1026,/nf-core_input_csv_builder/proteinfold_example/fasta/T1026.fasta,multiple files in project so need to have absolute path
T1041,T1041.fa,extension .fa and unique file in the project
T1030,T1030.fasta,extension .fasta and unique file in the project
The prefilled file demonstrates the different file path formats supported by the applet, including absolute paths and file names. The prefilled file may contain any number of additional columns; however, the applet will automatically retain only the columns required by the pipeline schema and discard the rest.
Steps:
Click the prefilled samplesheet box and choose your metadata (.csv) file.
Choose proteinfold pipeline version: 1.1.1 or 2.0.0.
Leave required columns empty because it will use information in the metadata.
Name your output .csv: It can be proteinfold_v1.1.1_samplesheet.csv or .proteinfold_v1.1.1_samplesheet. If you leave this box empty, it will use the default name: samplesheet.
Choose the output destination.
Use the default instance and launch the job.

Runtime: 2 minutes
Successful job checklist:
Job status is Done
Check log file: no error or warning related to samplesheet input

Output csv: meet requirement of input file in nf-core/proteinfold 1.1.1

Run verification with nf-core/proteinfold successfully
To verify this output, you can run a quick test with nf-core/proteinfold applet using this samplesheet with the test and docker profiles. Here is a script example using nf-core/proteinfold applet in Public Dataset AWS East (project-J3JyY6j030gzQypGpk273241):
dx run project-J3JyY6j030gzQypGpk273241:/ProteinFold/applets/proteinfold_v1.1.1 \
-ioutdir='proteinfold_v111' \
-iinput='project-xxx:/nf-core_input_csv_builder/proteinfold_example/samplesheet_output/proteinfold_v1.1.1_samplesheet.csv' \
-inextflow_run_opts='-profile test,docker' \
--destination 'project-xxx:/users/ivy/test_csv_builder/test_06_05_26/' \
--priority high \
--name "proteinfold_test_csv_builder" \
-y
Note: project-xxx is the project you save your samplesheet output
Runtime: 11 minutes.

Example 2: File selection and manual input for ID
Scenario: A user wants to run proteinfold version 2.0.0 with different input file formats. They select three files directly from DNAnexus: a .yaml, a .json, and a .faa file, and manually assign an ID to each by entering sample1, sample2, sample3 in the id field. Note: version 2.0.0 accepts extension '.fa', '.faa', '.fasta', '.yaml', '.yml', or '.json'.
Steps:
Click the fasta box and select three files: .yaml, .json and .faa in nf-core_input_csv_builder/proteinfold_example/fasta.

Choose proteinfold version 2.0.0, provide sample1,sample2,sample3 in the id box and output name.

Choose your output destination, keep the default instance and launch the job.
Runtime: 2 minutes
Successful job:
Job status is Done.
Check log file: no error or warning related to samplesheet input.

Output csv: meet requirement of input file in nf-core/proteinfold 2.0.0 and the id column uses sample1, sample2, and sample3 instead of extracting name from file name

Negative cases
Input files for negative cases are in nf-core_input_csv_builder/proteinfold_example/metadata_example/negative_cases/.
proteinfold_v1.1.1_input_metadata_missing_fasta.csv : missing fasta file.
T1029.fasta.txt.
Output files from negative cases are in nf-core_input_csv_builder/proteinfold_example/samplesheet_output/negative_cases_results/.
Example 3: Upload CSV with missing fasta value for nf-core/proteinfold 1.1.1
Scenario: A user uploads a prefilled samplesheet that accidentally has an empty fasta value for one of the rows. The applet will still generate the output samplesheet, but will log a warning for the missing value. The affected row will appear as nan in the output, while all other valid rows are resolved correctly to dx:// URIs. Users should review the validation summary and correct any missing values before running the pipeline.

Expected output
Job completed successfully.
The log file contains a warning indicating the missing fasta value for the affected row (e.g., T1026 has no fasta file provided).

The output samplesheet is generated with an empty cell for the missing fasta value, while all other rows are resolved correctly to dx:// paths

Example 4: Select a wrong input file (non fasta file) for nf-core/proteinfold version 1.1.1
Scenario: A user accidentally selects a non-FASTA file (e.g., a .txt file) from the DNAnexus file browser instead of a valid FASTA file. The applet will still generate the output samplesheet but will log a warning indicating that the selected file does not have a valid FASTA extension.

Expected output
Job completed successfully.
The log file contains a warning indicating the wrong format file (e.g., T1029 has no right fasta file provided).

For technical considerations, limitations, and troubleshooting that apply to all CSV builder applets, see Technical Considerations.
Last updated