davatron5000 / awesome-standalones

A curated list of awesome framework-agnostic standalone web components
1.31k stars 46 forks source link

Switch to using Eleventy to build the README.md #24

Closed daviddarnes closed 2 months ago

daviddarnes commented 2 months ago

Summary

In order to make maintaining this repo easier I propose we switch to accepting submissions as a JSON object added to a main standalones.json. We can then use a build tool, in this case Eleventy, to build the main README.md file. Submissions can then be supplied as a clean JSON object.

This allows us to make the submissions process more streamlined. People submitting can either create an issue with the JSON object in the description, or directly add the object to the standalones.json file. Plus we can automate the build step using GitHub Actions. It's actually possible to automate file updates to the repo using the github/checkout action. You can see an example here https://github.com/orgs/community/discussions/25234#discussioncomment-7976290

Next steps

Next I need to create a Workflow file which will contain the GitHub Action to rebuild the README.md. I'll need some tokens for verification which we can do later. Once that's all working and we've tested the submission process (just add a JSON object to the standalones.json and magic should happen ✨) we can then switch to this main branch. I saw that the existing branch is called master. Since I'll be setting up the GitHub Action with a branch called main anyway I thought it was a good moment to get inline with the current naming conventions. It's the reason this PR is actually a draft, the idea isn't to merge the branch but to make it the new main.

More than happy to chat through this!

Droces commented 2 months ago

Hi David. What would be the review and acceptance process for new submissions? I like your thinking about a streamlined submission process using simple JSON files, but I worry that people will submit rubbish if they can (if there's no good review process).

daviddarnes commented 2 months ago

Fair point @Droces! The submission process would work just like it did before, with submissions coming from issues and PRs. With issues we can set up a template which should help people with the JSON format, and PRs we can leave people to just add to the submissions.json file. So in reality only the format is changing, not the actual acceptance process. People with merging permission will need to review the changes before merging.

daviddarnes commented 2 months ago

@davatron5000 I've gotten it working, way easier than I thought (many thanks to @stefanzweifel for the GitHub Action). I've also added issue forms receiving submissions and updates to standalones. I guess the last step is to switch the repo to using main instead of master? The open submissions should be done outside of this work

daviddarnes commented 2 months ago

Closing this as technically it's "merged" 🎉