Home

Awesome

On Your Mental Blog

Website can be found here.

Forked from the incredible Tailwind-Nextjs-Starter-Blog by Tim Lrx.

Check out the starter documentation or fork this project and start building your own blog!

Examples

Homepage

Watch Listen Example

Motivation

I was inspired by the Tailwind-Nextjs-Starter-Blog and decided to fork it to build my own blog. While working on my own personal blog, I remembered my good friend, Reuben Hardern was starting his own podcast. I offered to build him a small website to get his podcast started.

As a 8-month, self-taught developer, I thought this would be a great introduction to Next.js and Tailwind.

I took inspiration from the other blogs linked in the README.md of the Tailwind-Nextjs-Starter-Blog to help me with design principles and styling.

Features

Youtube Integration

YoutubeEmbed components is a simple way of embedding a YouTube video into a page. It accepts a YouTube video ID and renders the video.

YoutubeDescription component returns the description of a YouTube video in a <p> tag. The google API returns a string containing multiple \n characters, which renders in a strange way. This component splits on the \n characters and maps over each item, returning the item in a <p> tag.

latestVideo component returns the latest video from the channel. It uses the getDescription function to get the relevant text from the YouTube video description.

detailedYoutubeIDFetch function gets specific details for a given YouTube video ID. This information is not available in the general list search API.

Buzzsprout RSS Integration

Buzzsprout is a podcasting website. It has a RSS feed for each of its channels. This is where I used the RSS feed to get the latest episode from each channel and display a playable component for each episode.

I used React Audio Player to display the audio player.

Customization of this component can be found in the EpisodeList component.

Stylist Changes

Development

Run npm start to start the development server. Navigate to the localhost:3000 URL to view the site.

Compose a Post

Run node ./scripts/compose.js to bootstrap a new post.