Skip to content

Future plans

Lisa Nguyen Quang Do edited this page Aug 3, 2017 · 5 revisions

Workflow (user perspective)

Architecture

Work packages:

  • Querying specification (Lisa).
  • Lookup table (Ben, Lisa).
  • New UI for ABM:
    • Balsamiq first (Alex).
    • Port what is possible to the new UI (Alex).
  • Builder and analyzer:
    • Analyzer: only Hermes (Ankur).
    • Builder: finish SBT (Ankur).
  • Port the current workflow to the new system (Ankur -> later).
  • Packager:
    • Zenodo exporter (Ben).
    • Archiver -> Verify it is working well (Ankur).
  • Crawler:
    • Prototype (Adrian).
    • Integration into ABM (Ankur -> later).
    • Extension to Maven (Ankur -> later).
  • Browse collections, login, register (Alex).

Specification (JSON format)

{
  "repositories":{ // list of existing repos.
    "type":"array",
    "required":false,
    "items":{
      "platform":{ // GitHub, BitBucket, ...
        "type":"string",
        "required":true
      },
      "repo_id":{
        "type":"string",
        "required":true
      },
      "url":{
        "type":"string",
        "required":true
      },
      "commit_id":{
        "type":"string",
        "required":true
      }
    }
  },
  "keywords":{ // search keywords.
    "type":"array",
    "required":false,
    "items":{
      "type":"string",
    }
  },
  "filters":{ // filters to apply.
    "type":"array",
    "required":false,
    "items":{
      "filter_type":{ // GitHub filter, Hermes filter, etc.
        "type":"string",
        "required":true
      },
      "filter_id":{
        "type":"string",
        "required":true
      },
      "options":{
        "type":"array",
        "required":true,
        "items":{ // **TODO(lisa)**: To define
          "key":{
            "type":"string",
            "required":true
          },
          "value":{
            "type":"string",
            "required":true
          }
        }
      },
    }
  }
}

Database schema