Archival backend providing core set of APIs and administrative pages.

Prasoon fc562b22d5 major restructuring of code 4 lat temu
app fc562b22d5 major restructuring of code 4 lat temu
conf fc562b22d5 major restructuring of code 4 lat temu
gradle 54d75142ef basic data model 5 lat temu
out fc562b22d5 major restructuring of code 4 lat temu
project 7cb4434a3f generated EAD models and parsers 5 lat temu
public 54d75142ef basic data model 5 lat temu
test fc562b22d5 major restructuring of code 4 lat temu
.gitignore fc562b22d5 major restructuring of code 4 lat temu
LICENSE.md 08e5b7e5b1 updated to GPL3 4 lat temu
QORE.iml fc562b22d5 major restructuring of code 4 lat temu
README.md e30cb07f8e cleanup 4 lat temu
build.gradle fc562b22d5 major restructuring of code 4 lat temu
build.sbt fc562b22d5 major restructuring of code 4 lat temu
gradlew 54d75142ef basic data model 5 lat temu
gradlew.bat 54d75142ef basic data model 5 lat temu
sample payload 7cb4434a3f generated EAD models and parsers 5 lat temu

README.md

QORE

Archival backend providing core set of APIs and administrative pages.

Running the project locally

To run the project locally, you must have sbt installed (version 1.0+). cd into the root of the project and execute sbt run. This would start an sbt shell and run the project on the default port. From here on, you can play with the application using GraphiQL or any other GraphQL compliant application (or by simply using cUrl).

GraphQl API usage

A query like such:

{
  allCollections {
    id
  },
  collection(id : "f8b405d6-fc4f-4ae8-adeb-7ddb07b758bd") {
    archdesc {
      did {
        id
      }
      archdescoption {
        ... scopeContent
      }
    }
  }
}

fragment scopeContent on scopecontent {
  scopecontentoption {
    ... on p {
      mixed {
        ... on text {
          text
        }
      }
    }
  }
}

would result in:

{
  "data": {
    "allCollections": [
      {
        "id": "f8b405d6-fc4f-4ae8-adeb-7ddb07b758bd"
      }
    ],
    "collection": {
      "archdesc": {
        "did": {
          "id": null
        },
        "archdescoption": [
          {},
          {
            "scopecontentoption": [
              {
                "mixed": [
                  {
                    "text": "The Lowell Thomas Papers encompasses a wide range of materials documenting the life, family, and professional career of Lowell Thomas. These materials include correspondence, administrative and financial documents, manuscripts, printed materials, photographic materials, motion picture films, audio recordings, and memorabilia."
                  }
                ]
              }
            ]
          },
          {},
          {},
          {}
        ]
      }
    }
  }
}

Contribution | Collaboration

The project board is available at:

https://tree.taiga.io/project/prasoon-qore/timeline

Caution

This project is under active development and is bound to change rapidly.