{ "info": { "author": "Robin Andeer", "author_email": "robin.andeer@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Software Development" ], "description": "# Puzzle [![Build Status][travis-image]][travis-url] [![Test Coverage][coveralls-img]][coveralls-url]\n\nDocumentation at www.robinandeer.com/puzzle/\n\nVariant Caller GUI and genetic disease analysis tool.\n\n```bash\n$ git clone https://github.com/robinandeer/puzzle.git\n$ cd puzzle\n$ pip install --editable .\n$ puzzle view tests/fixtures/\n# open webbrowser on port 5000\n$ open http://localhost:5000\n```\n\n## Using Puzzle\nPuzzle will look for variant calling resources such as VCF files and [GEMINI][gemini] databases and visualize their content. It lets you inspect, annotate, and analyze variant calls.\n\nPuzzle is not primarily meant to be run as a persistant server but think of it more as an webinterface to quickly spin to visualize your variant calls.\n\nWe set out to make `Puzzle` both very simple to install as well as intuitive to use. You can be up and running in minutes with minimal prerequisites.\n\n## Developing Puzzle\nPuzzle is a Python Flask app with a command line interface. It can work with multiple backends using plugins; raw VCFs, GEMINI, MongoDB.\n\nAnyone can help make this project better - read [CONTRIBUTING](CONTRIBUTING.md) to get started!\n\n### Install for development\nI decided to try out [Otto][otto] for this project so make sure you have it installed :smile:\n\n```bash\n$ git clone https://github.com/robinandeer/puzzle.git\n$ cd puzzle\n$ otto dev\n$ otto dev ssh\n> npm install\n> sudo apt-get install vim python-pip git\n> pip install --user --editable .\n> puzzle /vagrant/tests/\n# open webbrowser on port 5000\n```\n\n## Testing Puzzle\nTo run the tests, you need [pytest](pytest) installed in your system. You can install `pytest` together\nwith the other development libraries by running `pip install -r requirements-dev.txt`.\n\nYou will also need to download the database used for testing, which you can do by executing this command:\n\n```\nwget https://s3-us-west-2.amazonaws.com/robinandeer/HapMapFew.db -O tests/fixtures/HapMapFew.db\n```\n\nTo test a gemini database with structural variants do:\n\n```\nwget https://s3-us-west-2.amazonaws.com/robinandeer/HapMapSv.db -O tests/fixtures/HapMapSv.db\n```\n\nThen, just run `py.test tests/`\n\n## Use a gemini database\n\nMake sure you have gemini installed in your local environment\n\n```\npuzzle view path/to/gemini_database.db\n```\n\n## Use ped info ##\n\nPuzzle uses the ped file to show more information in family view and in variant calls:\n\n```\npuzzle view tests/fixtures/hapmap.vcf --family_file/-f tests/fixtures/hapmap.ped\n```\n\n## Establish a persistent local database\n\nPuzzle can establish a persistent local database, so you can keep work between sessions.\nThis enables other key features, such as gene lists for filtering and variant triage.\nFirst, you need to initialize a local database. Then one or more cases can be loaded and \nare then ready for viewing as soon as the web server is started.\n\n```\npuzzle init --root tests/fixtures\npuzzle load --root tests/fixtures tests/fixtures/hapmap.vcf\npuzzle view --root tests/fixtures\n```\n\n## Structural variant visualisation\n\nPuzzle enables visualisation also of structural variants with the use of '--variant-type sv' with '--load' or '--view'.\nEnjoy a list view of SVs as stored in gemini or vcf format. Key fields such as chromosomal band and size are enabled by default.\n\nIf gemini database with sv:s is downloaded, as described above, do:\n\n```\npuzzle view tests/fixtures/HapMapSv.db\n```\n\nTo view a example file with sv:s:\n\n```\npuzzle view tests/fixtures/hapmap.sv.vep.vcf.gz\n```\n\n## Build documentation\nDocumentation is generated using [Gitbook][gitbook]. Building the docs locally requires the GitBook CLI.\n\n```bash\n$ cd puzzle/\n$ npm install -g gitbook-cli\n$ gitbook serve ./docs\n```\n\nThe documentation can now be viewed on `http://localhost:4000/`.\n\n\n## Credits\nPuzzle Piece by Creative Stall from the Noun Project\n\n## License\nMIT. See the [LICENSE](LICENSE) file for more details.\n\n\n[travis-url]: https://travis-ci.org/robinandeer/puzzle?branch=master\n[travis-image]: https://img.shields.io/travis/robinandeer/puzzle/master.svg?style=flat-square\n[coveralls-url]: https://coveralls.io/github/robinandeer/puzzle\n[coveralls-img]: https://img.shields.io/coveralls/robinandeer/puzzle.svg?style=flat-square\n[otto]: https://ottoproject.io/\n[gemini]: https://github.com/arq5x/gemini\n[pytest]: http://pytest.org/latest/\n[gitbook]: https://www.gitbook.com/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/robinandeer/puzzle", "keywords": "puzzle development", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "puzzle", "package_url": "https://pypi.org/project/puzzle/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/puzzle/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/robinandeer/puzzle" }, "release_url": "https://pypi.org/project/puzzle/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "Web UI for searching genome variations", "version": "0.1.1" }, "last_serial": 2142187, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "5eef30acb8eb16f5f3abb85db5448dc9", "sha256": "aed29b9d2650d7725c6da661b355485443d477b84d7fa9d4110ed68f441275f6" }, "downloads": -1, "filename": "puzzle-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5eef30acb8eb16f5f3abb85db5448dc9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 265212, "upload_time": "2016-02-26T12:52:20", "url": "https://files.pythonhosted.org/packages/e1/3b/da9dfb6bc7df58affca00b6fbfc3e6402bde2ff19d02946f55238dcd2a9b/puzzle-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d9ba2ea2bd296096a230cf14964daa7", "sha256": "757d42b9b7c95c02ed6b3c18cdcd8efec3f81703536ae5edc049fc48c7f4a8cb" }, "downloads": -1, "filename": "puzzle-0.0.1.tar.gz", "has_sig": false, "md5_digest": "4d9ba2ea2bd296096a230cf14964daa7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7843393, "upload_time": "2016-02-26T12:52:12", "url": "https://files.pythonhosted.org/packages/fa/1c/79925327898981d3bd2799872977a4c249d5abc1f22024186ed4b578348a/puzzle-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "c74785484a90cfe2547b5e0a26d2d7e4", "sha256": "bd89a420bd6066c3502f1adb63c4ccc2a0cd3df47b7a82313457cf57f130964c" }, "downloads": -1, "filename": "puzzle-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c74785484a90cfe2547b5e0a26d2d7e4", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 265240, "upload_time": "2016-02-26T12:55:42", "url": "https://files.pythonhosted.org/packages/cb/0f/6115ad3699aa92c3e5411887d34f56291807ade8e5924f6af0cfb28acb0b/puzzle-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f3951890917efc25bd01f6f4be1a6b0c", "sha256": "90f5ef6fceeda245644bf92865f9d388874ada0bff384cdb5524af35f6cd4c9d" }, "downloads": -1, "filename": "puzzle-0.0.2.tar.gz", "has_sig": false, "md5_digest": "f3951890917efc25bd01f6f4be1a6b0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7843417, "upload_time": "2016-02-26T12:55:35", "url": "https://files.pythonhosted.org/packages/97/86/5732664341df32d2c36cfcae4e210c88f7db58511eb7283fc3a3a270d632/puzzle-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "141d6b5276be810de03183163821057c", "sha256": "005779329c0ea18efdd53e03176f8083c7bfab0a08c2ae9ec3ef7779660aa058" }, "downloads": -1, "filename": "puzzle-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "141d6b5276be810de03183163821057c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 265232, "upload_time": "2016-02-26T12:57:28", "url": "https://files.pythonhosted.org/packages/f4/97/af861b5160e443ef43b8e00c585e43815eb63110d8c36e122dc517ff3f8b/puzzle-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dee547764fd7c59f931fe8ec3d36231c", "sha256": "f9715c5900479866e2eea464e9aeb2e9878a34ca6f254a6b498010fe7d412484" }, "downloads": -1, "filename": "puzzle-0.0.3.tar.gz", "has_sig": false, "md5_digest": "dee547764fd7c59f931fe8ec3d36231c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7843418, "upload_time": "2016-02-26T12:57:21", "url": "https://files.pythonhosted.org/packages/18/86/ae1d3fbaa2faf43b0c9e7a7a2f990e911d9d8fe833cef8be57b9ca3b41e3/puzzle-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "ec6f0fb5e876eb1b5352c080310ed04f", "sha256": "a979d736d57ee3c7c88e5f657f6b12f0e56218c174d701da9eb630d2b6e54592" }, "downloads": -1, "filename": "puzzle-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ec6f0fb5e876eb1b5352c080310ed04f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8439797, "upload_time": "2016-05-31T08:58:56", "url": "https://files.pythonhosted.org/packages/b6/2d/181d683d2992ac989a71b54adf79a8f01f813ab115f7d977dee8a5843ab2/puzzle-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "16901e190c0b2c4b1dcd8374befed153", "sha256": "4b8f893e1a97fc01e769419b67f9ef45a5c95285b16e70d4ecf92a5d2f75fbe3" }, "downloads": -1, "filename": "puzzle-0.1.1.tar.gz", "has_sig": false, "md5_digest": "16901e190c0b2c4b1dcd8374befed153", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8439807, "upload_time": "2016-05-31T09:01:40", "url": "https://files.pythonhosted.org/packages/11/8c/965dc42c6c6576666233abbea25a8f8e64eb59c890921cd91089ea152d0c/puzzle-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "16901e190c0b2c4b1dcd8374befed153", "sha256": "4b8f893e1a97fc01e769419b67f9ef45a5c95285b16e70d4ecf92a5d2f75fbe3" }, "downloads": -1, "filename": "puzzle-0.1.1.tar.gz", "has_sig": false, "md5_digest": "16901e190c0b2c4b1dcd8374befed153", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8439807, "upload_time": "2016-05-31T09:01:40", "url": "https://files.pythonhosted.org/packages/11/8c/965dc42c6c6576666233abbea25a8f8e64eb59c890921cd91089ea152d0c/puzzle-0.1.1.tar.gz" } ] }