This converts an assortment of python command line interfaces into a language agnostic build spec for usage in GUI creation.
Python Makefile
Latest commit 22dfed8 May 15, 2016 @Chris7 Chris7 Merge pull request #23 from wooey/add-param-actions
Add param_action to argparse scripts
Permalink
Failed to load latest commit information.
clinto Add param_action to argparse scripts May 8, 2016
.gitignore
.travis.yml requirements.txt added to travis Jun 22, 2015
Makefile
README.md Update README.md Aug 11, 2015
requirements.txt testing suite Jun 22, 2015
setup.py
tox.ini basic tests May 29, 2015

README.md

clinto

Build Status Coverage Status

Join the chat at https://gitter.im/wooey/clinto

This converts an assortment of python command line interfaces into a language agnostic build spec for usage in GUI creation.

Here's a basic usage:

from clinto import parser
specs = parser.Parser(script_path='/home/chris/Devel/pythomics/pythomics/scripts/proteinInference.py', script_name='Protein Inference')
specs.get_script_description()
{'description': '\nThis script will annotate a tab delimited text file with peptides with\ncorresponding proteins present in an annotation file, and can also\nuse this annotation to include iBAQ measures.\n',
 'inputs': [{'group': 'optional arguments',
   'nodes': [{'choice_limit': None,
     'choices': None,
     'help': 'Threads to run',
     'model': 'IntegerField',
     'name': 'p',
     'param': '-p',
     'required': False,
     'type': 'text',
     'value': 1},
    {'choice_limit': '1',
     'choices': None,
     'help': 'The fasta file to match peptides against.',
     'model': 'FileField',
     'name': 'fasta',
     'param': '-f',
     'required': False,
     'type': 'file',
     'upload': True},

...

    {'choice_limit': None,
     'choices': None,
     'help': 'Where to save the file with motifs. Default: --out file with _motif suffix.',
     'model': 'CharField',
     'name': 'motif_out',
     'param': '--motif-out',
     'required': False,
     'type': 'text'}]},
  {'group': 'Protein Grouping Options',
   'nodes': [{'checked': False,
     'choice_limit': 0,
     'choices': None,
     'help': 'Only group proteins with unique peptides',
     'model': 'BooleanField',
     'name': 'unique_only',
     'param': '--unique-only',
     'required': False,
     'type': 'checkbox'},
    {'checked': False,
     'choice_limit': 0,
     'choices': None,
     'help': 'Write the position of the peptide matches.',
     'model': 'BooleanField',
     'name': 'position',
     'param': '--position',
     'required': False,
     'type': 'checkbox'},
    {'checked': False,
     'choice_limit': 0,
     'choices': None,
     'help': 'Treat peptides as case-sensitive (ie separate modified peptides)',
     'model': 'BooleanField',
     'name': 'case_sensitive',
     'param': '--case-sensitive',
     'required': False,
     'type': 'checkbox'}]}],
 'name': 'abc',
 'path': '/home/chris/Devel/pythomics/pythomics/scripts/proteinInference.py'}