livepeer / awesome-livepeer

A community curated list of projects, tutorials, demos, and resources within the Livepeer ecosystem
MIT License
38 stars 5 forks source link

Add GitHub pages site (#6) #7

Closed rickstaa closed 7 months ago

rickstaa commented 7 months ago

This pull request introduces the deployment of our project's web page using GitHub Pages, a feature discussed in detail in issue #6. The primary goal of this feature is to enhance the visibility and accessibility of our project. You can view the deployed page at https://rickstaa.dev/awesome-livepeer to see the feature in action.

Implementation:

Testing:

Next Steps:

Repository Topics:

Feedback and further suggestions are welcome and highly appreciated πŸš€.

rickstaa commented 7 months ago

Since I also fixed some linting errors, the easiest way to review this is by going through the commits individually, starting with https://github.com/livepeer/awesome-livepeer/pull/7/commits/50cfa08e03b38cfdd28a652aa63e807da58d7773 which contains the core of this pull request.

rickstaa commented 7 months ago

@dob It looks like the following websites no longer exist, have expired SSL certificates or are broken (see the link checking CI).

https://github.com/livepeer/awesome-livepeer/blob/521ef9d0c75d4254fae477f3d5ea35e71af17454/README.md?plain=1#L9

https://github.com/livepeer/awesome-livepeer/blob/521ef9d0c75d4254fae477f3d5ea35e71af17454/README.md?plain=1#L107

https://github.com/livepeer/awesome-livepeer/blob/521ef9d0c75d4254fae477f3d5ea35e71af17454/README.md?plain=1#L126

I contacted the developers for a fix.

rickstaa commented 7 months ago

I've temporarily disrupted the styling by integrating the livepeer.cool domain. I'm planning to address this issue shortly and will update you once it's resolved so you can take a look πŸ‘πŸ».

rickstaa commented 7 months ago

I've temporarily disrupted the styling by integrating the livepeer.cool domain. I'm planning to address this issue shortly and will update you once it's resolved so you can take a look πŸ‘πŸ».

I've successfully resolved the issue πŸ‘πŸ». The website is now live at https://livepeer.cool. Please note that the SSL certificate might take up to 24 hours to update fully. The website's design currently features a neutral, unopinionated style, which can be customized to suit your preferences.

dob commented 7 months ago

Thanks @rickstaa. A couple small items...

1) On the output page it says something like, "This site is open source. Improve it here." I think it might be a little bit more inviting to community members to say something less dev centric and instead focus on the list. "This list is open source and maintained by the community. Suggest an improvement to add, edit, or remove items from Awesome Livepeer."

2) I didn't fully follow the version bump workflow. Will the page get updated when a change is merged into the README, or does someone have to also somehow bump a version to trigger a build?

rickstaa commented 7 months ago

Hi @dob, thanks for sharing your insightful feedback!

  1. On the output page it says something like, "This site is open source. Improve it here." I think it might be a little bit more inviting to community members to say something less dev centric and instead focus on the list. "This list is open source and maintained by the community. Suggest an improvement to add, edit, or remove items from Awesome Livepeer."

I completely agree that a more community-centric message would be more welcoming. The phrase "This list is open source and maintained by the community. Suggest an improvement to add, edit, or remove items from Awesome Livepeer" indeed sounds more inviting. I've initiated a pull request to address this, aiming to modify the default primer theme in a user-friendly manner. You can follow the progress of this request here: GitHub PR link. Meanwhile, to expedite the launch of https://livepeer.cool, we could consider the workaround detailed in Jake Lee's blog: Removing GitHub Pages 'Improve this page'.

  1. I didn't fully follow the version bump workflow. Will the page get updated when a change is merged into the README, or does someone have to also somehow bump a version to trigger a build?

The process is currently set up so that any merged pull request automatically updates the page. The workflow details are outlined here: GitHub Workflow link. While versioning serves as a method for maintainers to keep track of changes, I'm open to improvement suggestions. One idea is to trigger website updates only with new version releases, which could be more orderly if multiple collaborators exist.

Another possibility is using the Release Please Action from GitHub, though it might be a bit complex for our needs. It automates changelogs and enforces the conventional commits convention, as seen in this example: Release tag link.

Currently, our release action is simple and effective, especially considering that many contributors to github.com/livepeer/awesome-livepeer may not have a software development background. However, I'm eager to hear what you think about the best approach for our release workflow. Your feedback is greatly valued! πŸ˜ƒ

rickstaa commented 7 months ago

Thanks, @iameli, for your encouragement πŸ˜ƒ! The GitHub Actions are already operational in my fork, and the results are accessible at https://livepeer.cool (details can be found at this link). Integrating them into the main repository is straightforward; it just requires merging the pull request and adjusting the Cloudflare DNS settings.

You're right about the importance of testing changes without merging; it's essential for a smooth workflow. I haven't yet included instructions for this in our documentation, but I see the value in adding it to the CONTRIBUTING.md file, which follows the template from https://github.com/jthegedus/awesome-list-template. To facilitate developer testing, we could consider several approaches:

  1. GitHub Action for PR Previews: Develop a GitHub Action that automatically publishes changes from PRs to a temporary subdomain (e.g., `livepeer.cool/pr-preview/pr-[number]/) and links this in the PR comments. This approach would enable easy viewing and testing of changes in a live environment before merging (see https://github.com/rossjrw/pr-preview-action).
  2. Local Jekyll Build: Provide guidance on how to build and run the Jekyll page locally. This would allow developers to see their changes in real-time on their own machines.
  3. Docker Container: Offer instructions for building and running the Jekyll environment using a provided Docker container. This could simplify setup and ensure a consistent environment across different systems.

I think option 1 is in line with how we want users to apply suggestions and allows for easy reviewing. I'd love to hear which of these options you prefer, or if you have any other suggestions or preferences. Your feedback is invaluable in improving the development process!

rickstaa commented 7 months ago

@iameli, I've just conducted a swift investigation, and it appears that the native support for displaying PR page previews is not yet available within our GitHub action-based deploy pipeline. However, I have some good news! The GitHub team has already implemented this feature and is actively using it internally, as documented here: https://github.com/orgs/community/discussions/7730#discussioncomment-7603270. We can expect it to be deployed shortly.

In the meantime, I will update our CONTRIBUTING.md to provide clear instructions for maintainers on how to build the page locally or through a Docker container. This should help bridge the gap until the native support becomes available.

rickstaa commented 7 months ago

@iameli Since GitHub is actively developing a GitHub Pages preview function, I believe we don't have to dedicate development resources to this task ourselves. In the meantime, I have updated the CONTRIBUTION.md to provide instructions on the local build process until GitHub officially releases this feature (see https://github.com/livepeer/awesome-livepeer/pull/7/commits/dee12a5c6f704400921bbf221f4d16f1f9b7bad6).

@iameli, @dob If you have any suggestions for the [CONTRIBUTION.md](https://github.com/livepeer/awesome-livepeer/pull/7/files#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055 or the build procedure, please let me know πŸ‘πŸ».

rickstaa commented 7 months ago

@dob I've forked the build actions to allow us to set a custom footer in anticipation of https://github.com/pages-themes/primer/pull/85 being merged into the upstream. I've condensed your suggestion to keep it as a one-liner. If you have a new one-line footer idea, please share it. I believe we're ready to release https://livepeer.cool to the public. If you have any other changes you'd like me to make, please don't hesitate to reach out πŸ˜„.

image