triceratops-show / www.triceratops.show Goto Github PK
View Code? Open in Web Editor NEWwebsite for Tricerátops Show, brazilian alternative music podcast
Home Page: https://www.triceratops.show
License: MIT License
website for Tricerátops Show, brazilian alternative music podcast
Home Page: https://www.triceratops.show
License: MIT License
there are only 21 episodes, last one is from december
https://podcasts.apple.com/us/podcast/tricer%C3%A1tops-show/id1574767544
We could listen to events to autogenerate certain fields:
based on podcast_file
, which we assume should exist.
In the future we could even do the same for youtube.
right now we have pagination (eg docs/page/1, docs/page/2)
i think they come from the .Paginate
use
so i guess we have to remove this query
https://github.com/triceratops-show/triceratops-show.github.io/blob/main/layouts/partials/row.html#L22
every new post shouldn't change much, except the n-1 episode
therefore the deployment shouldn't be so slow (it's taking ~5 minutes currently)
ye
Now that we display covers under the episodes (#72), maybe we should allow people zooming into these covers, since sometimes they are so detailed (eg https://www.triceratops.show/episodios/43/)
It's just easier to manage everything in the same place.
It's good to have an idea.
Maybe we should run a cron that access all episodes?
i guess easiest way is to migrate to static cms?
https://www.staticcms.org/docs/netlify-cms-migration-guide
https://support.deezer.com/hc/en-gb/articles/115000960389-How-to-get-your-podcast-on-Deezer
https://www.facebook.com/luiz.terra1/posts/4665277816838693?comment_id=4665425286823946&__cft__[0]=AZXZS8g-N3HlwqKj0FJ9QAHSutIXjbMOTus7bTmbG--lp3wWBqh-73u7pVe98frRnUTWeS1q2Ttzk1PN7rtjoFpYx2bWaGMSgbbQ4KcYOXRHYQTkAfShn6Qq9IXJJSOOx8c&__tn__=R]-R
so that we don't accidentaly publish episodes
we could pull from our bucket all the static data (mp3 episodes) which we can then refer via hugo, guaranteeing they exist
also we maybe could generate certain fields like episode_bytes and duration based on that?
luiz asked for it
one really important thing is parsing the xml and validating it's still good, valid rss xml
the website itself could also be tested, ideally with the same tool as we are validating the xml
maybe cypress? :)
we can look at the content-length
header
< content-length: 147706662
and check for it in a preSave
event
CMS.registerEventListener({
name: 'preSave',
handler: ({ entry }) => {
return entry.get('data').set('title', 'new title');
},
});
https://github.com/porjo/youtubeuploader
step 1 is to run this locally
step 2 is to run in ci, the challenge is how to integrate with netlify cms and how to idempotently update the same video for the same episode
Idea 1:
We could try to autopopulate a field
CMS.registerEventListener({
name: "preSave",
handler: ({ entry }) => {
const image = entry.get("data").get("episode_image");
return entry.get("data").set("image", image);
},
});
Problem is that it's infered to be a type: image
, so we can't just hide it.
https://github.com/netlify/netlify-cms/blob/460d1e6835af122f86278b4b2f9c2e3b7bc91488/packages/netlify-cms-core/src/constants/fieldInference.tsx#L63
Tecnically we could inject some custom css to hide that field
Idea 2:
Rename podcast_image
to simply image
https://github.com/youtube/api-samples/blob/master/go/upload_video.go
We could create a cli that uploads to youtube
it would save me a few seconds
final objective is to have something that takes the mp3 + the cover art, generates a video and uploads to youtube
For some reason we also build xml files for the artists and participants page
which is around 270 files currently
❯ find public -name '*.xml' -type f | grep -E '(artistas|particip)' | wc -l
270
eg
https://www.triceratops.show/artistas/13th-floor-elevators/index.xml
since most episodes' body are similar
ex: that 2 episodes don't have the same URL
eh right now they are being duplicated after build (to /docs dir)
i guess when moving to a proper server this won't happen anymore
every time i release a new episode i have to hard refresh the index page to see the new episode
i think we have to cache bust that somehow
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.