@lipme/ts-biofiledetector
v0.0.7
Published
A set of function to predict bioinformatics file types (bam, gff3, bed, vcf, tsv)
Downloads
25
Readme
TS-BIOFILEDETECTOR
Overview
A set of function to predict file formats
Formats included:
- Fasta (proteic/nucleic)
- GFF3 (annotation/alignment)
- BED
- VCF
- TSV, with specific typing of :
- BAM
Installation
npm i @lipme/ts-biofiledetector
Usage
import { getFileFormat } from "@lipme/ts-biofiledetector";
Output
- Fasta
{
format: "fasta",
valid: true|false,
metadata: {
type: "dna|protein",
seqids: ['list','of','seqids']
error?: { 'errorType' : ['list', 'of', 'erroneous', 'lines']}
}
}
- GFF3
{
format: "gff3",
valid: true|false,
metadata: {
type: "annotation|alignment",
seqids: ['list','of','seqids'],
features: ['list', 'of', 'features'],
attributes: ['list', 'of', 'attributes'],
error?: { 'errorType' : ['list', 'of', 'erroneous', 'lines']}
}
}
- BED
{
format: "bed",
valid: true|false,
metadata: {
type: "bed3|bed4|bed6|bed9|bed12",
seqids: ['list','of','seqids'],
columns: "numberOfColumns",
withBrowser: true|false, //browser line found
withTrack: true|false, //track line found
error?: { 'errorType' : ['list', 'of', 'erroneous', 'lines']}
}
}
- VCF
{
format: "vcf",
valid: true|false,
metadata: {
type: "VCFversion",
seqids: ['list','of','seqids'],
samples: ['list','of','samples'],
error?: { 'errorType' : ['list', 'of', 'erroneous', 'lines']}
}
}
- TSV
{
format: "tsv",
valid: true|false,
metadata: {
type: "tsvX|orthofinder|interproscan|nicknames",
columns: "numberOfColumns",
lines: "numberOfLines",
explicitHeader: true|false, //true if first line stars with '#'
header:: ['list','of','field','names'],
error?: { 'errorType' : ['list', 'of', 'erroneous', 'lines']}
}
}
- BAM
{
format: "bam",
valid: true,
metadata: {
type: "alignment",
seqids: ['list', 'of', 'seqids'], // @SQ lines
programs: ['list', 'of', 'programs'] //@PG lines
}
}
License
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
Contact
For questions or feedback, please open an issue or contact us at [email protected]