Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@arshad/gatsby-theme-podcast-core

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@arshad/gatsby-theme-podcast-core

Adds support for podcast to Gatsby sites

  • 1.1.6
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

@arshad/gatsby-theme-podcast-core

Version License PRs welcome!

This core theme includes a Podcast and PodcastEpisode type that you can use to build a podcast site. Episodes are sourced from a Podcast RSS feed. It includes no styles.

Installation

Step 1: In the root of your Gatsby site, run the following command:

yarn add @arshad/gatsby-theme-podcast-core

Step 2: Enable it in gatsby-config.js

// gatsby-config.js
...
  plugins: [
    {
      resolve: `@arshad/gatsby-theme-podcast-core`,
      options: {
        feedUrl: `https://example.com/feed`,
        podcast: {
          name: `Name of Podcast`,
          description: `Eligendi nisi nobis nisi voluptate. Corporis deserunt provident hic numquam. Veritatis vero necessitatibus adipisci cumque voluptate rerum at.`,
          image: `assets/images/podcast.jpg`,
          social: [
            {
              name: `Apple Podcast`,
              url: `https://itunes.apple.com`,
            },
            {
              name: `Google Podcast`,
              url: `https://podcasts.google.com`,
            },
          ],
        },
      },
    },
  ]
...

Theme options

KeyDefault valueDescription
feedUrlnullThe url for the podcast feed
basePath/podcastRoot url for all photo posts
episodesPerPage10Number of phoepisodestos to show per page for pagination
podcastnullConfiguration for the podcast. Includes name, description, image and social {name, url} links.

Example usage

// gatsby-config.js
// gatsby-config.js
...
  plugins: [
    {
      resolve: `@arshad/gatsby-theme-podcast-core`,
      options: {
        feedUrl: `https://example.com/feed`,
        podcast: {
          name: `Name of Podcast`,
          description: `Eligendi nisi nobis nisi voluptate. Corporis deserunt provident hic numquam. Veritatis vero necessitatibus adipisci cumque voluptate rerum at.`,
          image: `assets/images/podcast.jpg`,
          social: [
            {
              name: `Apple Podcast`,
              url: `https://itunes.apple.com`,
            },
            {
              name: `Google Podcast`,
              url: `https://podcasts.google.com`,
            },
          ],
        },
      },
    },
  ]
...

Data models

Podcast

type Podcast implements Node @dontInfer {
  id: ID!
  name: String!
  description: String!
  image: File
  social: [PodcastSocialLink]
}

PodcastEpisode

type PodcastEpisode implements Node @dontInfer {
  id: ID!
  guid: String!
  title: String!
  slug: String!
  date: Date! @dateformat
  duration: Int!
  subtitle: String!
  summary: String!
  url: String!
}
type PodcastSocialLink implements Node @dontInfer {
  name: String!
  url: String!
}

Customization

Create the following components in your site to shadow and customize the core components:

src
└── @arshad
    └── gatsby-theme-podcast-core
        └── components
            ├── episode-teaser.js
            ├── episode.js
            ├── episodes.js
            └── podcast.js

To learn more about component shadowing, check out the official theme docs.

Support

Create an issue on the main repo @arshad/gatsby-themes.

Keywords

FAQs

Package last updated on 15 Jun 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc