{"action":"created","comment":{"url":"https://api.github.com/repos/qiime2/docs/pulls/comments/221340611","pull_request_review_id":159959141,"id":221340611,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMTM0MDYxMQ==","diff_hunk":"@@ -0,0 +1,296 @@\n+QIIME 2 for Experienced Microbiome Researchers\n+##############################################\n+\n+\n+.. contents:: QIIME 2 for Experienced Microbiome Researchers\n+   :depth: 3\n+\n+In this document, we'll go over how to use QIIME 2 to process microbiome data.\n+This tutorial is intended for experienced microbiome researchers who already know how to process data and need to know the **QIIME 2 commands pertaining to specific steps in 16S processing**.\n+\n+The :doc:`QIIME 2 overview tutorial <overview>` contains a more theoretical overview of microbiome data processing.\n+\n+Why switch to QIIME 2?\n+----------------------\n+\n+Transitioning to QIIME 2 can be difficult for users who are used to processing data with their own tools and scripts, and who want fine control over every step in the process.\n+We understand the frustrating learning curve for experienced microbiome researchers, but believe that\n+the community, open-sourced nature, and commitment to reproducible science make switching to QIIME 2 worth any initial frustrations.\n+\n+By providing a common framework for microbiome data analysis, QIIME 2 brings together a **vibrant and inclusive community**.\n+By joining the QIIME 2 community as an established microbiome researcher, you will automatically be connected to other leaders in this field and can more easily work together to propel the development and implementation of best practices in microbiome research for broad use.\n+The QIIME 2 community includes both established leaders in microbiome research as well as newcomers: all are encouraged to participate and learn from each other.\n+The `QIIME 2 forum <https://forum.qiime2.org/>`__ contains a wealth of information on how to perform microbiome data processing and analysis, as well as fruitful discussion on best practices in this space.\n+\n+QIIME 2 also encourages making **microbiome research more reproducible**.\n+QIIME 2 reduces inappropriate analyses by defining specific data types and restricting methods only to their appropriate data type inputs.\n+It also keeps track of everything that's been done to a given data file in the :doc:`provenance <../concepts>` metadata associated with each QIIME 2 artifact.\n+Furthermore, by wrapping tools into a common framework, **data processing pipelines are streamlined**: with QIIME 2, you'll be able to re-write what was once a collection of scripts in different coding languages, calling different executables and re-formatting data inputs and outputs in most intermediate steps, into one (or a few) simple bash scripts.\n+\n+Finally, QIIME 2 is **open-sourced and specifically designed for experienced researchers to contribute and expand the reach of their work.**\n+QIIME 2 is really just a collection of wrappers called :doc:`plugins <../plugins/index>`, which can be written for any software, package, or other installable executables.\n+Writing a QIIME 2 plugin for a method that you develop instantly makes it accessible and usable by thousands of users.\n+\n+Pro-tips for power users\n+~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+That said, here are a few tips we've learned that should substantially improve your experience in transitioning your workflows to QIIME 2:\n+\n+**Pro-tip #1: QIIME 2 artifacts are just zip files**.\n+If at any point you want to look at what actual files are in the ``.qza`` artifact, you can use :doc:`qiime tools export <exporting>` to extract the data file directly (which is basically just a wrapper for ``unzip``).\n+Alternatively, you can also unzip your artifact directly (``unzip -k file.qza``) and look through the files in the ``data/`` folder.\n+\n+**Pro-tip #2: the QIIME 2 command line interface tools are slow because they have to unzip and re-zip the data contained in the artifacts each time you call them.**\n+If you need to process your data more interactively, you might want to use the Python API - it is much faster since objects can be simply stored in memory.\n+You can learn more about the different `QIIME 2 interfaces <https://docs.qiime2.org/2018.6/interfaces/>`__.\n+\n+**Pro-tip #3: to enable tab-complete in QIIME 2**, run ``source tab-qiime``.\n+\n+Data processing steps\n+---------------------\n+\n+The processing steps we'll cover in this tutorial include:\n+\n+1. Importing data into QIIME 2\n+2. Demultiplexing data (i.e. mapping each sequence to the sample it came from)\n+3. Removing non-biological parts of the sequences (i.e. primers)\n+4. Performing quality control and:\n+\n+   -  denoising sequences with DADA2 or deblur, and/or\n+   -  quality filtering, length trimming, and clustering with VSEARCH or dbOTU\n+\n+5. Assigning taxonomy\n+\n+Importing data into QIIME 2\n+~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+If you're using QIIME 2 to process your data, the first thing you need to do is get that data into a format that QIIME 2 can understand.\n+Various importing methods currently available in QIIME 2 are highlighted in the :doc:`QIIME 2 importing\n+tutorial <importing>`.\n+\n+This step has the potential to be the most confusing part of the QIIME 2 pipeline as there are dozens of import and format types to choose from.\n+To see a full list of available import/format types use: ``qiime tools import --show-importable-formats`` and ``qiime tools import --show-importable-types``\n+\n+If you're importing data that you've generated, you'll likely need to generate a :ref:`manifest file <manifest file>`, which is just a text file that  maps each FASTQ or FASTA file to its sample ID and direction (if applicable).\n+\n+If you have sequencing data with one of two very specific formats (:ref:`EMP <emp import>` or :ref:`Casava <casava import>`), you can directly import the folder containing your sequencing files with\n+the ``--type EMPSingleEndSequences`` or ``--type 'SampleData[PairedEndSequencesWithQuality]'`` flags (or their respective paired-end types).\n+Otherwise if you don't have one of these two very specific formats, you'll need to make the manifest file to give ``import`` instructions on what and how to import your files.\n+\n+Demultiplexing sequences\n+~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+If you have reads from multiple samples in the same file, you'll need to demultiplex your sequences.\n+\n+If your barcodes have already been removed from the reads and are in a separate file, you can use :doc:`q2-demux <../plugins/available/demux/emp-paired/>` to demultiplex these.\n+\n+If your barcodes are still in your sequences, you can use functions from the :doc:`cutadapt\n+plugin <../plugins/available/cutadapt/index>`.\n+The ``cutadapt demux-single`` method looks for barcode sequences at the beginning of your reads (5' end) with a certain error tolerance, removes them, and returns sequence data separated by each sample.\n+The QIIME 2 forum has a `tutorial on various functions available in cutadapt <https://forum.qiime2.org/t/demultiplexing-and-trimming-adapters-from-reads-with-q2-cutadapt/2313>`__, including demultiplexing.\n+You can learn more about how ``cutadapt`` works under the hood by reading their `documentation <https://cutadapt.readthedocs.io/en/stable/index.html>`__.\n+\n+Note: Currently ``q2-demux`` and ``q2-cutadapt`` do not support demultiplexing dual-barcoded paired-end sequences, but only can demultiplex with barcodes in the forward reads.\n+So for the time being for this type of demultiplexing needs to be done outside of QIIME 2 using other tools, for example\n+`bcl2fastq <https://support.illumina.com/sequencing/sequencing_software/bcl2fastq-conversion-software.html>`__.\n+\n+.. _`merge reads`:\n+\n+Merging reads\n+~~~~~~~~~~~~~~\n+\n+Whether or not you need to merge reads depends on how you plan to cluster or denoise your sequences into amplicon sequence variants (ASVs) or operational taxonomic units (OTUs).\n+\n+If you do need to merge your reads, you can use the QIIME 2 :doc:`VSEARCH plugin <../plugins/available/vsearch/index>`  with the :doc:`join-pairs <../plugins/available/vsearch/join-pairs/>` method.\n+\n+.. _`Remove non-biological sequences`:\n+\n+Removing non-biological sequences\n+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+If your data contains any non-biological sequences (e.g. primers, sequencing adapters, PCR spacers, etc), you should remove these.\n+\n+The :doc:`q2-cutadapt <../plugins/available/cutadapt/index>` plugin has comprehensive methods for removing non-biological sequences from :doc:`paired-end <../plugins/available/cutadapt/trim-paired/>` or :doc:`single-end <../plugins/available/cutadapt/trim-single/>` data.\n+\n+If you're going to use DADA2 to denoise your sequences, you can remove biological sequences at the same time as you call the denoising function.\n+All of DADA2's ``denoise`` fuctions have some sort of ``--p-trim`` parameter you can specify to remove base pairs from the end(s) of your reads.\n+(Deblur does not have this functionality yet.)\n+\n+Grouping similar sequences\n+~~~~~~~~~~~~~~~~~~~~~~~~~~\n+\n+There are two main approaches for grouping similar sequences together: denoising and clustering.\n+The overview tutorial provides more in-depth discussion of these approaches.\n+\n+Regardless of how you group your sequences, the grouping methods will output:\n+\n+1. A list of representative sequences for each of your OTUs and/or ASVs (QIIME 2 data format ``FeatureData[Sequence]``), and\n+2. A feature table which indicates how many reads of each OTU/sequence variants were observed in each sample. (QIIME 2 data format ``FeatureTable[Frequency]``)\n+\n+DADA2 and deblur will also produce a stats summary file with useful information regarding the filtering and denoising.\n+\n+Denoising\n+~~~~~~~~~\n+\n+DADA2 and deblur are currently the two denoising methods available in QIIME 2.\n+You can read more about the methods in the overview tutorial.","path":"source/tutorials/qiime2-for-experienced-microbiome-researchers.rst","position":136,"original_position":136,"commit_id":"813a44dc12750c8b2fdb6d19f1e0061c802f66c6","original_commit_id":"813a44dc12750c8b2fdb6d19f1e0061c802f66c6","user":{"login":"nbokulich","id":1907564,"node_id":"MDQ6VXNlcjE5MDc1NjQ=","avatar_url":"https://avatars2.githubusercontent.com/u/1907564?v=4","gravatar_id":"","url":"https://api.github.com/users/nbokulich","html_url":"https://github.com/nbokulich","followers_url":"https://api.github.com/users/nbokulich/followers","following_url":"https://api.github.com/users/nbokulich/following{/other_user}","gists_url":"https://api.github.com/users/nbokulich/gists{/gist_id}","starred_url":"https://api.github.com/users/nbokulich/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nbokulich/subscriptions","organizations_url":"https://api.github.com/users/nbokulich/orgs","repos_url":"https://api.github.com/users/nbokulich/repos","events_url":"https://api.github.com/users/nbokulich/events{/privacy}","received_events_url":"https://api.github.com/users/nbokulich/received_events","type":"User","site_admin":false},"body":"link to section?","created_at":"2018-09-28T18:20:39Z","updated_at":"2018-09-28T18:54:04Z","html_url":"https://github.com/qiime2/docs/pull/345#discussion_r221340611","pull_request_url":"https://api.github.com/repos/qiime2/docs/pulls/345","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/qiime2/docs/pulls/comments/221340611"},"html":{"href":"https://github.com/qiime2/docs/pull/345#discussion_r221340611"},"pull_request":{"href":"https://api.github.com/repos/qiime2/docs/pulls/345"}}},"pull_request":{"url":"https://api.github.com/repos/qiime2/docs/pulls/345","id":209987190,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA5OTg3MTkw","html_url":"https://github.com/qiime2/docs/pull/345","diff_url":"https://github.com/qiime2/docs/pull/345.diff","patch_url":"https://github.com/qiime2/docs/pull/345.patch","issue_url":"https://api.github.com/repos/qiime2/docs/issues/345","number":345,"state":"open","locked":false,"title":"Add 16S processing overview tutorial","user":{"login":"cduvallet","id":15236851,"node_id":"MDQ6VXNlcjE1MjM2ODUx","avatar_url":"https://avatars2.githubusercontent.com/u/15236851?v=4","gravatar_id":"","url":"https://api.github.com/users/cduvallet","html_url":"https://github.com/cduvallet","followers_url":"https://api.github.com/users/cduvallet/followers","following_url":"https://api.github.com/users/cduvallet/following{/other_user}","gists_url":"https://api.github.com/users/cduvallet/gists{/gist_id}","starred_url":"https://api.github.com/users/cduvallet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduvallet/subscriptions","organizations_url":"https://api.github.com/users/cduvallet/orgs","repos_url":"https://api.github.com/users/cduvallet/repos","events_url":"https://api.github.com/users/cduvallet/events{/privacy}","received_events_url":"https://api.github.com/users/cduvallet/received_events","type":"User","site_admin":false},"body":"Bod and I wrote this broad overview/tutorial, which covers QIIME 2 functionalities through the lens of a typical 16S workflow. It has a lot of overlap with the new [overview tutorial](https://docs.qiime2.org/2018.6/tutorials/overview/), but is slightly more catered to experienced microbiome users who are considering switching to QIIME 2.\r\n\r\nLet us know the best way to move forward on this - would be great to have this included in the next release, but if there are edits to think about/make, we're happy to post this on the forum while we figure out the best way to process this. ","created_at":"2018-08-21T23:58:19Z","updated_at":"2018-09-28T18:54:04Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7d22ed6b1a7785176c34716592aa007a4bb3c6d6","assignee":{"login":"cduvallet","id":15236851,"node_id":"MDQ6VXNlcjE1MjM2ODUx","avatar_url":"https://avatars2.githubusercontent.com/u/15236851?v=4","gravatar_id":"","url":"https://api.github.com/users/cduvallet","html_url":"https://github.com/cduvallet","followers_url":"https://api.github.com/users/cduvallet/followers","following_url":"https://api.github.com/users/cduvallet/following{/other_user}","gists_url":"https://api.github.com/users/cduvallet/gists{/gist_id}","starred_url":"https://api.github.com/users/cduvallet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduvallet/subscriptions","organizations_url":"https://api.github.com/users/cduvallet/orgs","repos_url":"https://api.github.com/users/cduvallet/repos","events_url":"https://api.github.com/users/cduvallet/events{/privacy}","received_events_url":"https://api.github.com/users/cduvallet/received_events","type":"User","site_admin":false},"assignees":[{"login":"cduvallet","id":15236851,"node_id":"MDQ6VXNlcjE1MjM2ODUx","avatar_url":"https://avatars2.githubusercontent.com/u/15236851?v=4","gravatar_id":"","url":"https://api.github.com/users/cduvallet","html_url":"https://github.com/cduvallet","followers_url":"https://api.github.com/users/cduvallet/followers","following_url":"https://api.github.com/users/cduvallet/following{/other_user}","gists_url":"https://api.github.com/users/cduvallet/gists{/gist_id}","starred_url":"https://api.github.com/users/cduvallet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduvallet/subscriptions","organizations_url":"https://api.github.com/users/cduvallet/orgs","repos_url":"https://api.github.com/users/cduvallet/repos","events_url":"https://api.github.com/users/cduvallet/events{/privacy}","received_events_url":"https://api.github.com/users/cduvallet/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/qiime2/docs/pulls/345/commits","review_comments_url":"https://api.github.com/repos/qiime2/docs/pulls/345/comments","review_comment_url":"https://api.github.com/repos/qiime2/docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/qiime2/docs/issues/345/comments","statuses_url":"https://api.github.com/repos/qiime2/docs/statuses/813a44dc12750c8b2fdb6d19f1e0061c802f66c6","head":{"label":"cduvallet:overview","ref":"overview","sha":"813a44dc12750c8b2fdb6d19f1e0061c802f66c6","user":{"login":"cduvallet","id":15236851,"node_id":"MDQ6VXNlcjE1MjM2ODUx","avatar_url":"https://avatars2.githubusercontent.com/u/15236851?v=4","gravatar_id":"","url":"https://api.github.com/users/cduvallet","html_url":"https://github.com/cduvallet","followers_url":"https://api.github.com/users/cduvallet/followers","following_url":"https://api.github.com/users/cduvallet/following{/other_user}","gists_url":"https://api.github.com/users/cduvallet/gists{/gist_id}","starred_url":"https://api.github.com/users/cduvallet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduvallet/subscriptions","organizations_url":"https://api.github.com/users/cduvallet/orgs","repos_url":"https://api.github.com/users/cduvallet/repos","events_url":"https://api.github.com/users/cduvallet/events{/privacy}","received_events_url":"https://api.github.com/users/cduvallet/received_events","type":"User","site_admin":false},"repo":{"id":133286593,"node_id":"MDEwOlJlcG9zaXRvcnkxMzMyODY1OTM=","name":"docs","full_name":"cduvallet/docs","private":false,"owner":{"login":"cduvallet","id":15236851,"node_id":"MDQ6VXNlcjE1MjM2ODUx","avatar_url":"https://avatars2.githubusercontent.com/u/15236851?v=4","gravatar_id":"","url":"https://api.github.com/users/cduvallet","html_url":"https://github.com/cduvallet","followers_url":"https://api.github.com/users/cduvallet/followers","following_url":"https://api.github.com/users/cduvallet/following{/other_user}","gists_url":"https://api.github.com/users/cduvallet/gists{/gist_id}","starred_url":"https://api.github.com/users/cduvallet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cduvallet/subscriptions","organizations_url":"https://api.github.com/users/cduvallet/orgs","repos_url":"https://api.github.com/users/cduvallet/repos","events_url":"https://api.github.com/users/cduvallet/events{/privacy}","received_events_url":"https://api.github.com/users/cduvallet/received_events","type":"User","site_admin":false},"html_url":"https://github.com/cduvallet/docs","description":"Source repository for https://docs.qiime2.org","fork":true,"url":"https://api.github.com/repos/cduvallet/docs","forks_url":"https://api.github.com/repos/cduvallet/docs/forks","keys_url":"https://api.github.com/repos/cduvallet/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cduvallet/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cduvallet/docs/teams","hooks_url":"https://api.github.com/repos/cduvallet/docs/hooks","issue_events_url":"https://api.github.com/repos/cduvallet/docs/issues/events{/number}","events_url":"https://api.github.com/repos/cduvallet/docs/events","assignees_url":"https://api.github.com/repos/cduvallet/docs/assignees{/user}","branches_url":"https://api.github.com/repos/cduvallet/docs/branches{/branch}","tags_url":"https://api.github.com/repos/cduvallet/docs/tags","blobs_url":"https://api.github.com/repos/cduvallet/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cduvallet/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cduvallet/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/cduvallet/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cduvallet/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/cduvallet/docs/languages","stargazers_url":"https://api.github.com/repos/cduvallet/docs/stargazers","contributors_url":"https://api.github.com/repos/cduvallet/docs/contributors","subscribers_url":"https://api.github.com/repos/cduvallet/docs/subscribers","subscription_url":"https://api.github.com/repos/cduvallet/docs/subscription","commits_url":"https://api.github.com/repos/cduvallet/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/cduvallet/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/cduvallet/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/cduvallet/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/cduvallet/docs/contents/{+path}","compare_url":"https://api.github.com/repos/cduvallet/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cduvallet/docs/merges","archive_url":"https://api.github.com/repos/cduvallet/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cduvallet/docs/downloads","issues_url":"https://api.github.com/repos/cduvallet/docs/issues{/number}","pulls_url":"https://api.github.com/repos/cduvallet/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/cduvallet/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/cduvallet/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cduvallet/docs/labels{/name}","releases_url":"https://api.github.com/repos/cduvallet/docs/releases{/id}","deployments_url":"https://api.github.com/repos/cduvallet/docs/deployments","created_at":"2018-05-14T00:47:41Z","updated_at":"2018-05-14T00:47:44Z","pushed_at":"2018-09-28T03:09:34Z","git_url":"git://github.com/cduvallet/docs.git","ssh_url":"git@github.com:cduvallet/docs.git","clone_url":"https://github.com/cduvallet/docs.git","svn_url":"https://github.com/cduvallet/docs","homepage":null,"size":8832,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"qiime2:master","ref":"master","sha":"dc4049d8a5122043dc29b4b01bd09213a85b19ff","user":{"login":"qiime2","id":18176583,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE4MTc2NTgz","avatar_url":"https://avatars0.githubusercontent.com/u/18176583?v=4","gravatar_id":"","url":"https://api.github.com/users/qiime2","html_url":"https://github.com/qiime2","followers_url":"https://api.github.com/users/qiime2/followers","following_url":"https://api.github.com/users/qiime2/following{/other_user}","gists_url":"https://api.github.com/users/qiime2/gists{/gist_id}","starred_url":"https://api.github.com/users/qiime2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/qiime2/subscriptions","organizations_url":"https://api.github.com/users/qiime2/orgs","repos_url":"https://api.github.com/users/qiime2/repos","events_url":"https://api.github.com/users/qiime2/events{/privacy}","received_events_url":"https://api.github.com/users/qiime2/received_events","type":"Organization","site_admin":false},"repo":{"id":72231397,"node_id":"MDEwOlJlcG9zaXRvcnk3MjIzMTM5Nw==","name":"docs","full_name":"qiime2/docs","private":false,"owner":{"login":"qiime2","id":18176583,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE4MTc2NTgz","avatar_url":"https://avatars0.githubusercontent.com/u/18176583?v=4","gravatar_id":"","url":"https://api.github.com/users/qiime2","html_url":"https://github.com/qiime2","followers_url":"https://api.github.com/users/qiime2/followers","following_url":"https://api.github.com/users/qiime2/following{/other_user}","gists_url":"https://api.github.com/users/qiime2/gists{/gist_id}","starred_url":"https://api.github.com/users/qiime2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/qiime2/subscriptions","organizations_url":"https://api.github.com/users/qiime2/orgs","repos_url":"https://api.github.com/users/qiime2/repos","events_url":"https://api.github.com/users/qiime2/events{/privacy}","received_events_url":"https://api.github.com/users/qiime2/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/qiime2/docs","description":"Source repository for https://docs.qiime2.org","fork":false,"url":"https://api.github.com/repos/qiime2/docs","forks_url":"https://api.github.com/repos/qiime2/docs/forks","keys_url":"https://api.github.com/repos/qiime2/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/qiime2/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/qiime2/docs/teams","hooks_url":"https://api.github.com/repos/qiime2/docs/hooks","issue_events_url":"https://api.github.com/repos/qiime2/docs/issues/events{/number}","events_url":"https://api.github.com/repos/qiime2/docs/events","assignees_url":"https://api.github.com/repos/qiime2/docs/assignees{/user}","branches_url":"https://api.github.com/repos/qiime2/docs/branches{/branch}","tags_url":"https://api.github.com/repos/qiime2/docs/tags","blobs_url":"https://api.github.com/repos/qiime2/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/qiime2/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/qiime2/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/qiime2/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/qiime2/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/qiime2/docs/languages","stargazers_url":"https://api.github.com/repos/qiime2/docs/stargazers","contributors_url":"https://api.github.com/repos/qiime2/docs/contributors","subscribers_url":"https://api.github.com/repos/qiime2/docs/subscribers","subscription_url":"https://api.github.com/repos/qiime2/docs/subscription","commits_url":"https://api.github.com/repos/qiime2/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/qiime2/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/qiime2/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/qiime2/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/qiime2/docs/contents/{+path}","compare_url":"https://api.github.com/repos/qiime2/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/qiime2/docs/merges","archive_url":"https://api.github.com/repos/qiime2/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/qiime2/docs/downloads","issues_url":"https://api.github.com/repos/qiime2/docs/issues{/number}","pulls_url":"https://api.github.com/repos/qiime2/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/qiime2/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/qiime2/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/qiime2/docs/labels{/name}","releases_url":"https://api.github.com/repos/qiime2/docs/releases{/id}","deployments_url":"https://api.github.com/repos/qiime2/docs/deployments","created_at":"2016-10-28T18:17:22Z","updated_at":"2018-09-27T19:58:21Z","pushed_at":"2018-09-28T03:09:35Z","git_url":"git://github.com/qiime2/docs.git","ssh_url":"git@github.com:qiime2/docs.git","clone_url":"https://github.com/qiime2/docs.git","svn_url":"https://github.com/qiime2/docs","homepage":null,"size":9217,"stargazers_count":3,"watchers_count":3,"language":"Python","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":24,"mirror_url":null,"archived":false,"open_issues_count":56,"license":{"key":"bsd-3-clause","name":"BSD 3-Clause \"New\" or \"Revised\" License","spdx_id":"BSD-3-Clause","url":"https://api.github.com/licenses/bsd-3-clause","node_id":"MDc6TGljZW5zZTU="},"forks":24,"open_issues":56,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/qiime2/docs/pulls/345"},"html":{"href":"https://github.com/qiime2/docs/pull/345"},"issue":{"href":"https://api.github.com/repos/qiime2/docs/issues/345"},"comments":{"href":"https://api.github.com/repos/qiime2/docs/issues/345/comments"},"review_comments":{"href":"https://api.github.com/repos/qiime2/docs/pulls/345/comments"},"review_comment":{"href":"https://api.github.com/repos/qiime2/docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/qiime2/docs/pulls/345/commits"},"statuses":{"href":"https://api.github.com/repos/qiime2/docs/statuses/813a44dc12750c8b2fdb6d19f1e0061c802f66c6"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"nbokulich"}}