Overview

SRVC is an open-source document review system. It is designed to make common review tasks fast and easy. Here is an overview of how to create a review project with SRVC.

Create a project

Every SRVC project has an sr.yaml configuration which specifies labels, review flows, and other parameters. See the sr.yaml from the srvc-template repository:

reviewer: mailto:user@example.com

labels:
  category:
    question: Category
    type: categorical
    categories:
      - A
      - B
      - C

  include:
    json-schema: boolean
    question: Include?
    required: true

flows:
  pubmed-search:
    steps:
      - uses: github:insilica/srvc-pubmed-search
        query: angry bees

  label:
    steps:
      - run-embedded: generator sink.jsonl

      - run-embedded: remove-reviewed

      - run-embedded: label-web
        labels: [include, category]
        port: 5005

To follow along, create a directory for your new project, and place this example sr.yaml file in that directory.

Note: This example requires Nix to be installed.

Import documents

With the sr.yaml file given above, documents can be imported from PubMed with the command:

sr flow pubmed-search

As the search step runs, you can see documents being appended to a file named sink.jsonl.

This step only needs to be run once, but can be repeated without harm. Any new or changed documents will simply be added to the existing documents.

Review documents

Reviewing documents involves assigning answers for the “include” and “category” labels. Get started with the command:

sr flow label

You should see the text Listening on http://127.0.0.1:5005. Visiting that address in a browser will load an interface that shows a document and allows submitting answers for that document. After you submit an answer, you should see that it has been appended to sink.jsonl.

Collaborate

A remote sink such as Sysrev can be used to keep data in sync with other reviewers.

Another way to collaborate with other reviewers is to use a git repository for your SRVC project directory. Reviewers can merge their work by merging their sink files. If there are any git conflicts, simply accept all additions from both reviewers. The SRVC data model allows for seamless merging.