-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.Rmd
69 lines (47 loc) · 3.33 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
---
output: github_document
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# podindexr <img src='man/figures/logo.png' align="right" width="25%" min-width="120px"/>
<!-- badges: start -->
[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental)
<!-- badges: end -->
`podindexr` is an R package providing a tidy interface to the [Podcast Index](https://podcastindex.org) database API available at <https://podcastindex-org.github.io/docs-api>.
> The Podcast Index is here to preserve, protect and extend the open, independent podcasting ecosystem. We do this by enabling developers to have access to an open, categorized index that will always be available for free, for any use.
## Acknowledgements
This package is my first contribution to the Podcast 2.0 movement, and I want to thank the following people/organizations for enabling me to create this package:
* [Adam Curry](https://podcastindex.social/@adam) and [Dave Jones](https://podcastindex.social/@dave) for creating the [Podcast Index](https://podcastindex.org) and answering all of my many questions. I highly recommend listening to their [Podcating 2.0](https://podcastindex.org/podcast/920666) show for the latest developments in the Podcasting 2.0 ecosystem!
* [Hadley Wickham](https://hadley.nz/) for creating the [{httr2}](https://httr2.r-lib.org/index.html) R package as well as his many contributions to the R community.
* [Scott Chamberlain](https://fosstodon.org/@sckottie) and [Maëlle Salmon](https://masalmon.eu/) for authoring the [HTTP testing in R](https://books.ropensci.org/http-testing/index.html) online book, which is an excellent resource for how you can build automated testing efficiently in R packages utilizing APIs.
* [Jenny Bryan](https://jennybryan.org/about/) & Hadley Wickham for authoring the comprehensive [R Packages](https://r-pkgs.org/) book.
## Installation
You can install the development version of `{podindexr}` from [GitHub](https://github.com/) with:
``` r
# install.packages("devtools")
devtools::install_github("rpodcast/podindexr")
```
## Configuration
The majority of the API endpoints supported by `podindexr` require an API key and secret pair. To obtain your own set, create a free developer account at <https://api.podcastindex.org> and save the credentials as environment variables called `PODCASTINDEX_API_KEY` and `PODCASTINDEX_API_SECRET` within a project-level or default user-directory `.Renviron` file.
## Usage
For a comprehensive overview of the package functionality, visit the documentation site [rpodcast.github.io/podindexr](https://rpodcast.github.io/podindexr). Below are examples of obtaining metadata associated with the [RWeekly Highlights](https://rweekly.org) podcast:
### Search
```{r}
#| label: search
library(podindexr)
search_bytitle("R Weekly Highlights")
```
### Episodes
```{r}
#| label: episodes
episodes_byfeedid(1062040)
```
## Code of Conduct
Please note that the podindexr project is released with a [Contributor Code of Conduct](https://contributor-covenant.org/version/2/1/CODE_OF_CONDUCT.html). By contributing to this project, you agree to abide by its terms.