@apolitical/content

React library to interact with Apolitical's content using Contentful CDA

Usage no npm install needed!

<script type="module">
  import apoliticalContent from 'https://cdn.skypack.dev/@apolitical/content';
</script>

README

Apolitical Content

Browser (and Node.js) library to interact with Apolitical's content using Contentful CDA

Requirements

Requires the following to run:

Installation

Install with yarn:

yarn add @apolitical/content

Available Scripts

In the project directory, you can run:

yarn run test

Runs the test (and the interactive mode can be enabled with --watchAll).

yarn build

Builds the library for production to the build folder. It correctly bundles the code on production mode and optimizes the build for the best performance.

yarn publish

Publishes the library to NPM.

Usage

The recommended way to use @apolitical/content is to set the context with the appropriate parameters:

const { setContext, getEntry } = require('@apolitical/content');

setContext({
  origin: 'some-url',
  accessToken: 'some-token'
});

And then, you can query Contentful as you like:

const { seoTitle, seoDescription, hero } = await getEntry({
  content_type: 'some-type',
  'fields.slug': 'some-slug',
});

Troubleshooting

Usage of other libraries within your library

  • Add the library as a dependency in package.json (effectively requiring the calling project to provide this dependency)
  • Add the Contentful library as a dependency in package.json. By default, only the library code is published, meaning that the Contentful library needs to be installed separately