Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yufree/daily
News/Blog aggregator website for R
https://github.com/yufree/daily
blogdown r rss-aggregator
Last synced: 12 days ago
JSON representation
News/Blog aggregator website for R
- Host: GitHub
- URL: https://github.com/yufree/daily
- Owner: yufree
- License: mit
- Created: 2018-01-24T00:52:13.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-04-19T00:31:14.000Z (7 months ago)
- Last Synced: 2024-04-19T04:49:04.015Z (7 months ago)
- Topics: blogdown, r, rss-aggregator
- Language: HTML
- Homepage: https://dailyr.netlify.com
- Size: 11.4 MB
- Stars: 14
- Watchers: 3
- Forks: 10
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Daily RSS
Daily News/Blog aggregator website and you could use this website as a template to create you own public rss daily reader by adding you own rss addresses collection in `R/list.txt` .
**Daily R** is a light news/blog aggregator website for R.# Features
- Real daily update and you could use RSS reader or click archive to find entries of the old posts
- No AD
- Remove the author to make more contents focused
- Update everyday via a automated process
- Use Github PR API to control posts
- Re-direct to the orginal pages by click title in the homepage and wait 10s to re-direct in the post page
- We reserve the right to delete any inappropriate posts
# Contribute
- Add your rss address and dates to the `R/list.txt`
- Use `getrss` from [scifetch](https://github.com/yufree/scifetch) to convert rss xml file into dataframe and use the following code to generate `md` files and PR to this repo.
```r
if (!dir.exists("content")) dir.create("content")
if (!dir.exists("content/post")) dir.create("content/post")
x <- scifetch::getrss('path-to-your-own-rss-xml-files')
for (i in 1:NROW(x)) {
name = gsub("^http[s]?://|/$", "", tolower(x[i, 'linkTitle']))
name = gsub("%", "", name)
name = gsub("[^a-z0-9]+", "-", name)
name = gsub("--+", "-", name)
# file name too long issue
name = substr(name, 1, 200)
p = sprintf('content/post/%s.md', paste0(name))
sink(p)
cat('---\n')
cat(yaml::as.yaml(x[i,],))
cat('disable_comments: true\n')
cat('---\n')
cat(as.character(x[i, 5]))
sink()
}
```- Add comma and your name to the `YAML` front matter block in contributor.md
# Recipe
- [Blogdown](https://github.com/rstudio/blogdown) to build the site from @yihui
- [xmag](https://github.com/yihui/hugo-xmag) layout also from @yihui and I made some modifications [here](https://github.com/yufree/hugo-xmag)
- [scifetch](https://github.com/yufree/scifetch) to analysis RSS(support xml, atom and json) from @yufree, modified from [tidyRSS](https://cran.r-project.org/web/packages/tidyRSS/index.html) from @RobertMyles
- [twitter-blogdown](https://t.yihui.name) by @yihui was the template to be hacked
- [Github Action](https://github.com/features/actions)
- [Cron Job](https://docs.github.com/en/actions/reference/events-that-trigger-workflows)
- [Your PR to RSS list](https://github.com/yufree/daily/edit/master/R/list.txt)