The ER-301 Hub :: 🙏 :: Organising community presets/packages/units

Thanks for reporting that, and apologies for the 404. I will update the docs right now. (Since we moved from yaml to md, of course the yaml doesn’t exist anymore)

@tomf This is not the final version yet :wink: If you get cracking on the docs, you can always move them when the integration is done. EDIT: I already started the per-unit markdown documentation support, just need to figure out the routing between pages. So, the magic is upon us, almost :unicorn:

5 Likes

New version 0.4 of the hub is available. The most eye-catching change will be the color coded category search, quite handy if you are searching for a specific type of unit across projects. I added support for dedicated pages per unit, recognizable by the icon you can see on the screenshot. It’s also possible to add documentation right on the project page with automatic anchor link navigation.

The yaml frontmatter for the markdown docs has been refactored to make the category search possible.

EDIT: ah yes, @tomf about the magic we were talking about, I mean the GitHub integration. After researching the matter I’m not optimistic :frowning: Because this is a static site, we need the documents in build time, so even if we can bypass or solve CORS issues we will undoubtedly run into on GitHub, we will never be able to integrate this content in the same way the local markdown content is integrated. I’m thinking routing and search features, all the cool stuff. There is still one route I would like to explore that involves building a private API that would trigger a fresh build every time there is content added, but the complexity of this doesn’t attract me, especially since complexity is exactly what we are avoiding by using a serverless system.

EDIT2: YouTube videos can be embedded in the markdown simply by using
<youtube :video-id=“‘btHXa_Kcoo4’”>
Of course, change the video code, but that’s it. **note the single quotes inside the double quotes, important detail

9 Likes

@tomf or anyone who knows GitHub better than I do. Is there a way to track the “latest release” or all releases as a javascript GET request that you know of? My search hasn’t yielded useful results so far. I’m getting curl script and GitHub actions (Get Latest Release · Actions · GitHub Marketplace · GitHub, Shell - Get latest release from GitHub · GitHub) but nothing that I recognize as a viable way to do it from the frontend.

Not having to bother with uploading the package files would be a first step to integrate GitHub. Then you just need to add metadata and optional documentation. It makes sense and should be doable in my head, but no joy so far.

Meanwhile I’m looking into expanding the technology a bit, more specifically I’m looking into Strapi as a headless CMS and API server for the content. It might be easier for a lot of people to add content from a GUI, instead of making PR’s on GitHub, but that will be for a future version and will probably require more substantial refactoring work, development and testing. I’m quite happy with the look and the current functionalities so far. And the markdown docs are looking great, for the most part thanks to tomf’s contributions!

EDIT: ~~at last I found something that seems, actually really great https://gitreleases.dev/~~ Nope, this ain’t gonna work either :expressionless:

Oh sorry yea, here’s the get request for the latest release on a repo https://api.github.com/repos/tmfset/er-301-custom-units/releases/latest

1 Like

Ah, that does seem to work. I thought I tried this one at some point :thinking: Sometimes the obvious is actually harder to find. Thanks!

2 Likes

New field defined in the markdown frontmatter that provides a direct GitHub download link to the latest release

ghRelease: https://api.github.com/repos/tmfset/er-301-custom-units/releases/latest

2 Likes

This is getting really good @Bparticle ! I need to get to work here. :slight_smile:

2 Likes

I have some questions for y’all if you don’t mind.

I’m thinking of calling this version of the hub “stable”, or at least ready for some more content and projects, unless there are some glaring shortcomings or improvements that need making. Are there any features missing, or are there things that could be smoother/improved at this point? Like I said earlier, I will look into the possibility of adding a headless CMS with user accounts for GitHub agnostic ER-301 developers but that will probably take some time to develop. Meanwhile, I’m actually liking the GitHub workflow.

Does anyone have ideas about firmware support, does it actually make sense to support v.05 or do we push the usage of v.06 packages?

What about the core units? Does it make sense to document them (steal docs from the wiki…) or would that create redundancy and maintenance problems.

2 Likes

FYI, I’m moving the wiki pages over to GitHub.

Interesting! So that would be markdown as well I’m guessing. I noticed the GitHub wiki creates a repository on its own, maybe we could actually link those pages in some clever way.

The front end seems really nice at this point. I haven’t tried publishing anything to it yet.

I don’t have a strong opinion on supporting 0.5. Personally, I’m never going back to it. :slight_smile:

1 Like

Any reason you have older versions of the package available for download?

I guess it’s good to have at least the last previous version hanging around in case the newest version introduced a bug, but it’s up to the publisher.

1 Like

I haven’t had much time to work on this project lately, but I did work on another project where I had a great success hooking a similar website up to Strapi, a node.js based API server. In this way it’s possible to build a pretty nice CMS with free tiers of just a few services. I think this would be a good option for the hub as well, so people can actually log in on the hub itself, fill in a form with some data and publish docs and files. The data structure is somewhat solid on the hub, so the next steps would be setting up the API, endpoints, services and build a few forms on the hub front-end to log in users and manage the content. If that sounds like a lot of work, that’s because it kinda is :smiley: But not to worry, time is an illusion. I’ll get to it.

6 Likes

lunchtime doubly so. thanks for all the hard work!

1 Like

Super late reply, but I would argue retaining a version of older things/releases is what github is already good at doing. It’s a bit confusing when going to “Downloads” on the hub and seeing an older build, but thinking it’s latest because it’s the only one that isn’t a github link. I’d just de-scope anything but a current github package release link imo.

Love this site/concept and appreciate you for making it!

As a way to push v.0.6+ packages I removed the table row showing firmware compatibility on the projects overview. (and I removed my own contribution that was only there because we didn’t have any other content). Super happy with the available projects on the hub so far.

Now listing:

Every single unit in these projects is pure solid gold as far as I’m concerned. Thanks guys!!

10 Likes

I added a basic navigation with some extra pages and links. There is an O|D firmware download page as well now so you can always grab the latest one from the same place, or get a previous version if that’s what you are looking for.

https://er301-hub.netlify.app/firmware

9 Likes

This is a continuation of the discussion we had on Discord between myself and @ljw @Worldwave @stolmine about the future of the hub.

  • I suggested to turn the hub into a CMS (content management system) with user logins in order to make it easier for all users to contribute their ER-301 created packages, without any coding or GitHub knowledge required. I think it’s valid idea but it would require quite some extra development and it would entail hosting costs and upkeep for an unforeseen future (right now we have free GitHub hosting). I have a few ideas to fund this project (and others) so it’s doable I think.

  • Because of the downsides of the previous proposal, a few voices suggested to keep it simple and just work with a few volunteering GitHub maintainers who would find the projects on the forum and add them manually to the hub, keeping everything nice and tidy, without the overhead of the CMS, hosting, user management and so forth. This would require little to no development because a lot of the hard work has been done and we could just add features as we deem necessary or fun.

I’m personally open to both ideas, but let’s vote for it! If you want to be able to log into the hub and submit your docs and packages directly, then vote CMS, if you think the hub can just as well be maintained by a few volunteers or your would like to volunteer yourself to add projects and keep the system up to date, then vote GitHub. And of course, let’s keep the discussion going.

  • Strapi CMS with user accounts, upload files / manage content etc.
  • GitHub only with a few maintainers / volunteers

0 voters

(Alongside this discussion, there was also talk about ways to fund these efforts, both for package development as for site maintenance but I will make a separate thread for this later.)

5 Likes

This is great thank you!

1 Like