GithubHelp home page GithubHelp logo

avocadotoastlive / avocadotoast.live Goto Github PK

View Code? Open in Web Editor NEW
41.0 41.0 6.0 1.52 MB

Home Page: https://avocadotoast.live/

License: MIT License

JavaScript 34.76% Liquid 60.73% CSS 4.13% Shell 0.38%
podcast

avocadotoast.live's People

Contributors

catchen avatar dependabot-preview[bot] avatar dependabot[bot] avatar imgbot[bot] avatar ruhuang2001 avatar vhxubo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

avocadotoast.live's Issues

Update source order

Based on current data, the failure rate in reverse order is Typlog > Ximalaya > Anchor.

Limit og:description to one paragraph

These 2 tags:

  • <meta property="og:description" content="{{ item.contentSnippet }}" />
  • <meta name="twitter:description" content="{{ item.contentSnippet }}" />

Migrate listener guide

Source: https://avocadotoast.typlog.io/guide

Destination: https://avocadotoast.live/listening/

Markdown:

## 【推荐】在各大泛用性播客平台中都可以订阅和收听:
* Apple Podcast: https://podcasts.apple.com/podcast/id1479918340
* Pocket Cast: https://pca.st/xvtd6yu4
* Castro: https://castro.fm/itunes/1479918340
* Overcast: https://overcast.fm/itunes1479918340/avocado-toast
* Google Podcast: https://www.google.com/podcasts…
* Breaker: https://www.breaker.audio/niu-you-guo-kao-mian-bao-avocado-…
* CastBox: https://castbox.fm/channel/id2366086
* Stitcher: https://www.stitcher.com/podcast/avocado-toast
* RadioPublic: https://radiopublic.com/https%3A%2F%2Fanchor.fm%2Fs%2Fe3e1f…
* PodBean: https://www.podbean.com/…/%E7%89%9B%E6%B2%B9%E6%9E%9C%E7%83…
* Apple Podcast(来自喜马拉雅的播放源): https://podcasts.apple.com/us/podcast/%E7%89%9B%E6%B2%B9%E6%9E%9C%E7%83%A4%E9%9D%A2%E5%8C%85%E4%B8%AD%E5%9B%BD%E7%89%88/id1520154407

## 直接RSS订阅: 
https://avocadotoast.typlog.io/episodes/feed.xml

## 半泛用播客平台:
* 小宇宙: https://www.xiaoyuzhoufm.com/podcast/5e7c8b2b418a84a046e3ecbc

## 其他播客平台:
* Spotify: https://open.spotify.com/show/3royq81yR8oRcdC0KxXBhY
* 喜马拉雅: https://www.ximalaya.com/keji/29161862/
* QQ音乐: https://y.qq.com/n/yqq/singer/001G2mFW47nPJr.html

Create an FAQ page

Audience: How to suggest content? How to become a guest?

Guest: How to prepare for recording? What is it like in the recording process?

rss-parser stopped working with Ximalaya RSS feed

It's been broken for a while.

> const Parser = require('rss-parser');
> let parser = new Parser();
> let feed = await parser.parseURL('https://www.ximalaya.com/album/29161862.xml')
Uncaught Error: Status code 406

Not sure why Ximalaya responds with 406. The feed URL can be opened in browser or curl.

Stop using path.join to manipulate URL

It doesn't work on Windows. path.join sees /... and treats it as C:\.... The output won't be valid URL. Use the URL class's new URL(path, base) instead.

Read the following MDN document to learn about how to use new URL(path, base) as a way to concatenate path: https://developer.mozilla.org/en-US/docs/Web/API/URL/URL

Look into this file and find all the path.join and path.resolve calls: https://github.com/avocadotoastlive/avocadotoast.live/blob/master/_data/data.js. Not all of them need to be corrected. Only those dealing with "virtual path" need to be updated. (Virtual path means a path used in URL instead of local file system.)

url.resolve could be a good replacement here, but it's deprecated. Here's how to use URL class to implement the url.resolve function: https://nodejs.org/api/url.html#url_url_resolve_from_to

Make platform link easier to discover

Right now, on mobile, there is only one RSS icon on the top-right of the page. We should make it easier for users to find such a link, and even encourage them to find it. Consider to change it to a Chinese work. Also, in the description, after summary of the podcast, consider to add one sentence to guide users to the subscribe.

Make timestamp link covering timestamp only

Right now timestamp link covers the whole bullet point. Sometimes we put a different link in the bullet point's text. That works on Typlog but not our own site. We should change our own site to be like Typlog. See the following example:

https://avocadotoast.live/episodes/97/
https://avocadotoast.typlog.io/episodes/standup_comedy

The function that's actually responsible for adding a link to the bullet point is here:

$('.summary ul > li').each(function () {
// Try to match m:ss and mm:ss formats at the beginning of each bulletpoint
var text = $(this).text();
var matches =
text.match(/^(?<hour>\d{1,2}):(?<minute>\d{2}):(?<second>\d{2})\b/) ||
text.match(/^(?<minute>\d{1,2}):(?<second>\d{2})\b/);
if (matches) {
var hour = parseInt(matches.groups.hour, 10) || 0;
var minute = parseInt(matches.groups.minute, 10) || 0;
var second = parseInt(matches.groups.second, 10) || 0;
var timestamp = hour * 3600 + minute * 60 + second;
var url = new URL(window.location);
url.searchParams.set('t', timestamp.toString());
$(this).html(
$('<a>')
.attr('href', url.toString())
.html($(this).html())
.click(function (event) {
if ('pushState' in history) {
setCurrentTime(timestamp);
history.pushState({ t: timestamp }, '', url.toString());
event.preventDefault();
}
}),
);
}
});

Assign width and height to og:image

Facebook share debugger shows this warning:

The provided 'og:image' properties are not yet available because new images are processed asynchronously. To ensure shares of new URLs include an image, specify the dimensions using 'og:image:width' and 'og:image:height' tags. https://developers.facebook.com/docs/sharing/best-practices/#precaching

Without width and height, the first time the link is shared there's no image in link preview because it takes time for Facebook to fetch the image.

Create robots.txt to block crawling of player URLs

Episodes use the following URL paths (item.itunes.episode is always an integer):

permalink: "episodes/{{ item.itunes.episode }}/index.html"

permalink: "cn/episodes/{{ item.itunes.episode }}/index.html"

They should be crawlable. The following URL paths are for embedded player (for Twitter card):

permalink: "episodes/{{ item.itunes.episode }}/player/index.html"

permalink: "cn/episodes/{{ item.itunes.episode }}/player/index.html"

They should not be crawlable. Please use robots.txt to prevent crawling of them.

Learn more about robots.txt here: https://developers.google.com/search/docs/advanced/robots/intro

Since it's impossible to use robots.txt to block /episode/{number}/player it's necessary to list all episodes inside robot.txt. Use the same approach of sitemap.xml to generate robots.txt with Liquid template:

https://github.com/avocadotoastlive/avocadotoast.live/blob/master/sitemap.liquid

连接图标上加入文字解释

现在主页上没有明确的订阅标识。建议采取以下之一或二:

  1. 在图标上明确用文字显示“订阅方式”
  2. 在图标旁写上应用或平台名

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.