{"id":21658601,"url":"https://github.com/gramps-graphql/data-source-openlibrary","last_synced_at":"2026-05-19T09:08:24.204Z","repository":{"id":89597834,"uuid":"107911560","full_name":"gramps-graphql/data-source-openlibrary","owner":"gramps-graphql","description":null,"archived":false,"fork":false,"pushed_at":"2020-06-02T11:40:27.000Z","size":3151,"stargazers_count":2,"open_issues_count":19,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-09T12:06:01.979Z","etag":null,"topics":["apollo-server-express","apollographql","gramps","gramps-data-source","graphql","graphql-server","open-library-api"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gramps-graphql.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-22T23:43:00.000Z","updated_at":"2021-10-19T13:01:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"ae3be06a-7d0e-4b84-a91a-dc59543d96a5","html_url":"https://github.com/gramps-graphql/data-source-openlibrary","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/gramps-graphql/data-source-openlibrary","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramps-graphql%2Fdata-source-openlibrary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramps-graphql%2Fdata-source-openlibrary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramps-graphql%2Fdata-source-openlibrary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramps-graphql%2Fdata-source-openlibrary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gramps-graphql","download_url":"https://codeload.github.com/gramps-graphql/data-source-openlibrary/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramps-graphql%2Fdata-source-openlibrary/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264455988,"owners_count":23611065,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apollo-server-express","apollographql","gramps","gramps-data-source","graphql","graphql-server","open-library-api"],"created_at":"2024-11-25T09:29:32.501Z","updated_at":"2026-05-19T09:08:19.163Z","avatar_url":"https://github.com/gramps-graphql.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://gramps-graphql.github.io/gramps-express/assets/img/gramps-banner.png\" alt=\"GrAMPS · An easier way to manage the data sources powering your GraphQL server\" width=\"450\"\u003e\n\n# GrAMPS GraphQL Data Source Base\n[![Build Status](https://travis-ci.org/gramps-graphql/data-source-base.svg?branch=master)](https://travis-ci.org/gramps-graphql/data-source-base) [![Maintainability](https://api.codeclimate.com/v1/badges/ac264833fac1fbd1afe0/maintainability)](https://codeclimate.com/github/gramps-graphql/data-source-base/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/ac264833fac1fbd1afe0/test_coverage)](https://codeclimate.com/github/gramps-graphql/data-source-base/test_coverage) [![npm version](https://img.shields.io/npm/v/@gramps/data-source-base.svg?style=flat)](https://www.npmjs.com/package/@gramps/data-source-base) [![Greenkeeper badge](https://badges.greenkeeper.io/gramps-graphql/data-source-base.svg)](https://greenkeeper.io/)\n\nThis is a minimal example and boilerplate for a GrAMPS data source. Inside, you’ll find:\n\n -  **Connector** — how to access the data source (e.g. a REST API)\n -  **Model** — methods to retrieve/modify data from the data source (e.g. a \n    CRUD wrapper)\n -  **Schema** — description for GraphQL to interpret the data (see the \n    [GraphQL docs on schemas](http://graphql.org/learn/schema/))\n -  **Resolvers** — functions to map the results of calls to model methods to\n    the schema\n\nEach file contains a `TODO` comment explaining the changes you’ll need to make to create a working data source.\n\nThe goal of this repo is to provide enough code to allow a working example of a data source and its related tests, but to limit how much boilerplate needs to be edited to get your own data source implemented.\n\n## Code Quality and Continuous Integration\n\nTo help ensure a reliable, easy-to-maintain data source, this example also includes:\n\n -  Configuration for Travis CI (for automated testing) and Code Climate\n    (for quality analysis)\n -  Starts you off right with test coverage at 💯\n -  Provides testing helpers for common resolver testing patterns\n -  Comes with docs! https://ibm.biz/graphql-data-source\n\n## Quickstart\n\n**NOTE:** Replace all instances of `YOUR_DATA_SOURCE_NAME` with the actual name you want to use (e.g. `data-source-companyname-datatype`).\n\n```sh\n# Clone the repo\ngit clone git@github.com:gramps-graphql/data-source-base.git data-source-YOUR_DATA_SOURCE_NAME\n\n# Move into it\ncd data-source-YOUR_DATA_SOURCE_NAME/\n\n# Change the remote repo\ngit remote set-url origin git@github.com:USER_OR_ORG/YOUR_REPO_NAME.git\n\n# IMPORTANT: Make sure to edit the name, description, contributors, and \n# repository fields in package.json\n\n# Install dependencies\nyarn install\n```\n\n### To Develop with Mock Data\n\nStart the app with the following command:\n\n```sh\n# Develop with mock data\nyarn mock-data\n```\n\n### To Develop with Live Data\n\nOnce you’ve got your data source configured to load live data, you can enable live data in development:\n\n```sh\n# Develop with live data\nyarn live-data\n```\n\n### Notes for Developers\n\nCurrently, there is no watch capability (PRs welcome!), so the service needs to be stopped (`control` + `C`) and restarted (`yarn [mock-data|live-data]`) to reflect new changes to the data source.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgramps-graphql%2Fdata-source-openlibrary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgramps-graphql%2Fdata-source-openlibrary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgramps-graphql%2Fdata-source-openlibrary/lists"}