Skip to content

sdelamo/podcast-gradle-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gradle Podcast Plugin

Installation

Check the installation instructions in the Gradle Plugin Portal.

Example

To generate a Podcast Feed such as:

<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">
    <channel>
        <title>Hiking Treks</title>
        <link>https://www.apple.com/itunes/podcasts/</link>
        <image>
            <title>Hiking Treks</title>
            <link>https://www.apple.com/itunes/podcasts/</link>
            <url>https://applehosted.podcasts.apple.com/hiking_treks/artwork.png</url>
        </image>
        <description>Love to get outdoors and discover nature&amp;apos;s treasures? Hiking Treks is the show for you. We review hikes and excursions, review outdoor gear and interview a variety of naturalists and adventurers. Look for new episodes each week.</description>
        <language>en-us</language>
        <copyright>&amp;#169; 2020 John Appleseed</copyright>
        <category text="Sports">
            <category text="Wilderness">
            </category>
        </category>
        <itunes:author>The Sunset Explorers</itunes:author>
        <itunes:type>serial</itunes:type>
        <itunes:owner>
            <itunes:name>Sunset Explorers</itunes:name>
            <itunes:email>mountainscape@icloud.com</itunes:email>
        </itunes:owner>
        <itunes:image href="https://applehosted.podcasts.apple.com/hiking_treks/artwork.png"></itunes:image>
        <itunes:category text="Sports">
            <itunes:category text="Wilderness"></itunes:category>
        </itunes:category>
        <itunes:explicit>no</itunes:explicit>
        <itunes:block>no</itunes:block>
    <item>
        <title>Hiking Treks Trailer</title>
        <enclosure length="498537"
                   type="audio/mpeg"
                   url="http://example.com/podcasts/everything/AllAboutEverythingEpisode4.mp3"></enclosure>
        <guid>aae20190418</guid>
        <itunes:episodeType>trailer</itunes:episodeType>
        <itunes:title>Hiking Treks Trailer</itunes:title>
        <content:encoded>&lt;p&gt;The Sunset Explorers share tips, techniques and recommendations for
great hikes and adventures around the United States. Listen on &lt;a href="https://www.apple.com/itunes/podcasts/"&gt;Apple Podcasts&lt;/a&gt;&lt;/p&gt;
        </content:encoded>
        <itunes:duration>1079</itunes:duration>
        <itunes:episode>1</itunes:episode>
        <itunes:season>1</itunes:season>
        <itunes:explicit>no</itunes:explicit>
    </item>
    <item>
        <title>S01 EP02 Garden of the Gods Wilderness</title>
        <enclosure length="498537"
                   type="audio/mpeg"
                   url="http://example.com/podcasts/everything/AllAboutEverythingEpisode4.mp3"></enclosure>
        <guid>aae20190425</guid>
        <itunes:episodeType>full</itunes:episodeType>
        <itunes:title>S01 EP02 Garden of the Gods Wilderness</itunes:title>
        <content:encoded>&lt;p&gt;Wilderness Area Garden of the Gods in Illinois is a delightful spot for an extended hike.&lt;/p&gt;
</content:encoded>
        <itunes:duration>839</itunes:duration>
        <itunes:episode>2</itunes:episode>
        <itunes:season>1</itunes:season>
        <itunes:explicit>no</itunes:explicit>
    </item>
    </channel>
</rss>

Episodes

Create a markdown file for each episode.

Use metadata at the beginning of documents. Metadata must be separated from the rest of the document by three dashes.

episodes/aae20190425.md

---
episodeType: FULL
episode: 2
season: 1
title: S01 EP02 Garden of the Gods Wilderness
enclosureLength: 498537
enclosureType: audio/mpeg
enclosureUrl: http://example.com/podcasts/everything/AllAboutEverythingEpisode4.mp3
guid: aae20190425
pubDate: 2018-09-18T01:15:00Z[GMT]
duration: 839
explicit: false
---

Wilderness Area Garden of the Gods in Illinois is a delightful spot for an extended hike.

episodes/aae20190425.md

---
episodeType: TRAILER
episode: 1
season: 1
title: Hiking Treks Trailer
enclosureLength: 498537
enclosureType: audio/mpeg
enclosureUrl: http://example.com/podcasts/everything/AllAboutEverythingEpisode4.mp3
guid: aae20190418
pubDate: 2019-01-08T01:15:00Z[GMT]
duration: 1079
explicit: false
---

The Sunset Explorers share tips, techniques and recommendations for
great hikes and adventures around the United States. Listen on [Apple Podcasts](https://www.apple.com/itunes/podcasts/)

NOTE: You can write your episode's description as markdown which will be render to HTML in your Podcast RSS Feed.

Extension

In your build file configure the metadata of your podcast with an extension:

podcast {
episodes = file("episodes")
title = 'Hiking Treks'
link = 'https://www.apple.com/itunes/podcasts/'
language = 'en-us'
copyright = '&#169; 2020 John Appleseed'
description = 'Love to get outdoors and discover nature&apos;s treasures? Hiking Treks is the show for you. We review hikes and excursions, review outdoor gear and interview a variety of naturalists and adventurers. Look for new episodes each week.'
author = "The Sunset Explorers"
type = 'SERIAL'
owner {
name = "Sunset Explorers"
email = "mountainscape@icloud.com"
}
image {
url = "https://applehosted.podcasts.apple.com/hiking_treks/artwork.png"
}
block = false
categories = 'SPORTS_WILDERNESS'
explicit = false
}

Extension

title - Required
the show title

owner - Required
the podcast contact information

podcast {
...
owner {
name = "Sunset Explorers"
email = "mountainscape@icloud.com"
}
}

subtitle

image - Required

The artwork for the show. link, title, width and height are optional

podcast {
...
image {
url = "https://media.podcast.groovycalamari.com/groovycalamari.png"
link = "http://groovycalamari.com"
title = 'Groovy Calamari'
width = 3000
height = 3000
}
}

link - Required
the website associated with a podcast

copyright - Required

language - Required
The language spoken on the show.

e.g. en-us. See list below for options

keywords
comma separated list of keywords

description - Required
The show description

type - Required
The type of the show

EPISODIC or SERIAL

block
Whether to remove the podcast from the Apple directory.
true or false

categories
The show category information
See list below

explicit
The podcast parental advisory information. true or false

episodes - Required
Folder where you save your episode's markdown files

podcast { 
  ...
  episodes = file('episodes') 
  ... 
}

Useful Links

Project Build

This library uses Gradle.

To Publish

./gradlew publishPlugins

Language codes

af, sq,eu,be,bg,ca,zh-cn,zh-tw,hr, cs,da,nl,nl-be,nl-nl,en,en-au,en-bz,en-ca,en-ie,en-jm,en-nz,en-ph,en-za,en-tt,en-gb,en-us,en-zw, et,fo,fi,fr,fr-be,fr-ca,fr-fr,fr-lu,fr-mc,fr-ch,gl,gd,de,de-at,de-de,de-li,de-lu,de-ch,el,haw,hu,is,in,ga,it,it-it,it-ch,ja,ko,mk,no,pl,pt,pt-br,pt-pt,ro,ro-mo,ro-ro,ru,ru-mo,ru-ru,sr,sk,sl,es,es-ar,es-bo,es-cl,es-co,es-cr,es-do,es-ec,es-sv,es-gt,es-hn,es-mx,es-ni,es-pa,es-py,es-pe,es-pr,es-es,es-uy,es-ve,sv,sv-fi,sv-se,tr-uk

Categories

ARTS, ARTS_BOOKS, ARTS_DESIGN, ARTS_FASHION_AND_BEAUTY, ARTS_FOOD, ARTS_LITERATURE, ARTS_PERFORMING_ARTS, ARTS_VISUAL_ARTS BUSINESS, BUSINESS_BUSINESS_NEWS, BUSINESS_CAREERS, BUSINESS_INVESTING, BUSINESS_MANAGEMENT, BUSINESS_MARKETING, BUSINESS_NONPROFIT, BUSINESS_MANAGEMENT_AND_MARKETING, BUSINESS_SHOPPING, COMEDY, COMEDY_INTERVIEWS, COMEDY_IMPROV, COMEDY_STANDUP, EDUCATION, EDUCATION_COURSES, EDUCATION_HOWTO, EDUCATION_SELFIMPROVEMENT, EDUCATION_EDUCATIONAL_TECHNOLOGY, EDUCATION_HIGHER_EDUCATION, EDUCATION_K12, EDUCATION_LANGUAGE_COURSES, EDUCATION_TRAINING, GOVERNMENT``HISTORY, GAMES_AND_HOBBIES,GAMES_AND_HOBBIES_AUTOMOTIVE,GAMES_AND_HOBBIES_AVIATION,GAMES_AND_HOBBIES_HOBBIES,GAMES_AND_HOBBIES_OTHER_GAMES,GAMES_AND_HOBBIES_VIDEO_GAMES,GOVERNMENT_ORGANIZATIONS,GOVERNMENT_ORGANIZATIONS_LOCAL,GOVERNMENT_ORGANIZATIONS_NATIONAL,GOVERNMENT_ORGANIZATIONS_NONPROFIT,GOVERNMENT_ORGANIZATIONS_REGIONAL ,HEALTH,HEALTH_FITNESS,HEALTH_MEDICINE,HEALTH_MENTAL_HEALTH,HEALTH_NUTRITION,HEALTH_SEXUALITY,HEALTH_ALTERNATIVE_HEALTH,HEALTH_FITNESS_NUTRITION,HEALTH_SELF_HELP, KIDS_AND_FAMILY,KIDS_AND_FAMILY_EDUCATION_FOR_KIDS,KIDS_AND_FAMILY_PARENTING,KIDS_AND_FAMILY_PETS_AND_ANIMALS,KIDS_AND_FAMILY_STORIES_FOR_KIDS, LEISURE,LEISURE_ANIMATION_AND_MANGA,LEISURE_AUTOMOTIVE,LEISURE_AVIATION,LEISURE_CRAFTS,LEISURE_GAMES,LEISURE_HOBBIES,LEISURE_HOME_AND_GARDEN,LEISURE_VIDEO_GAMES, MUSIC,MUSIC_COMMENTARY,MUSIC_HISTORY,MUSIC_INTERVIEWS, NEWS_AND_POLITICS, NEWS,NEWS_BUSINESS_NEWS,NEW_DAILY_NEWS,NEWS_ENTERTAINMENT_NEWS,NEWS_NEWS_COMMENTARY,NEWS_POLITICS,NEWS_SPORTS_NEWS,NEWS_TECH_NEWS, RELIGION_AND_SPIRITUALITY,RELIGION_AND_SPIRITUALITY_BUDDHISM,RELIGION_AND_SPIRITUALITY_CHRISTIANITY,RELIGION_AND_SPIRITUALITY_HINDUISM,RELIGION_AND_SPIRITUALITY_ISLAM,RELIGION_AND_SPIRITUALITY_JUDAISM,RELIGION_AND_SPIRITUALITY_OTHER,RELIGION_AND_SPIRITUALITY_SPIRITUALITY, SCIENCE,SCIENCE_ASTRONOMY,SCIENCE_CHEMISTRY,SCIENCE_EARTH_SCIENCES,SCIENCE_LIFE_SCIENCES,SCIENCE_MATHEMATICS,SCIENCE_NATURAL_SCIENCES,SCIENCE_NATURE,SCIENCE_PHYSICS,SCIENCE_SOCIAL_SCIENCES, SCIENCE_MEDICINE,SCIENCE_MEDICINE_MEDICINE,SCIENCE_MEDICINE_NATURAL_SCIENCES,SCIENCE_MEDICINE_SOCIAL_SCIENCES, SOCIETY_CULTURE,SOCIETY_CULTURE_HISTORY,SOCIETY_CULTURE_PERSONAL_JOURNALS,SOCIETY_CULTURE_PHILOSOPHY,SOCIETY_CULTURE_PLACES_AND_TRAVEL,SOCIETY_CULTURE_RELATIONSHIPS, SOCIETY_AND_CULTURE,SOCIETY_AND_CULTURE_DOCUMENTARY,SOCIETY_AND_CULTURE_HISTORY,SOCIETY_AND_CULTURE_PERSONAL_JOURNALS,SOCIETY_AND_CULTURE_PHILOSOPHY,SOCIETY_AND_CULTURE_PLACES_AND_TRAVEL,SOCIETY_AND_CULTURE_RELATIONSHIPS, SPORTS,SPORTS_BASEBALL,SPORTS_BASKETBALL,SPORTS_CRICKET,SPORTS_FANTASY,SPORTS_FOOTBALL,SPORTS_GOLF,SPORTS_HOCKEY,SPORTS_RUGBY,SPORTS_RUNNING,SPORTS_SOCCE,SPORTS_SWIMMING,SPORTS_TENNIS,SPORTS_OUTDOOR,SPORTS_VOLLEYBALL,SPORTS_WILDERNESS,SPORTS_WRESTLING, SPORTS_AND_RECREATION,SPORTS_AND_RECREATION_AMATEUR,SPORTS_AND_RECREATION_COLLEGE_AND_HIGH_SCHOOL,SPORTS_AND_RECREATION_OUTDOOR,SPORTS_AND_RECREATION_PROFESSIONAL, TRUE_CRIME, TECHNOLOGY,TECHNOLOGY_Gadgets,TECHNOLOGY_TECH_NEWS,TECHNOLOGY_PODCASTING,TECHNOLOGY_SOFTWARE_HOWTO, TV_AND_FILM,TV_AND_FILM_AFTERSHOWS,TV_AND_FILM_FILM_HISTORY,TV_AND_FILM_FILM_INTERVIEWS,TV_AND_FILM_FILM_REVIEWS,TV_AND_FILM_TV_REVIEWS`