this post was submitted on 22 Aug 2023
161 points (99.4% liked)

Selfhosted

40669 readers
385 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

This is a new, improved version of https://github.com/awesome-selfhosted/awesome-selfhosted/

Please check the release announcement for more details.

Maintainer here, happy to answer questions.

you are viewing a single comment's thread
view the rest of the comments
[–] vegetaaaaaaa 1 points 1 year ago (1 children)

Very sorry for the missing attribution. I added it in the header, should be online now.

No problem, thanks for fixing it so quickly!

at least it provides the ability to find projects that likely support docker for example

This information is already present but we need to make it easier to browse projects by platform -> https://github.com/awesome-selfhosted/awesome-selfhosted-data/issues/71

There should be a label with the max number of commits to provide some scale,

^now I see it but it's a bit small :)^

I looked a bit into how best to determine the activity level of a project and for me commit history is one of the strongest signs. Also Github uses this kind if graph in a users repo overview so its already familiar to GitHub users.

I see, I agree it's a good metric. I am wary of adding too much information that relies on Github APIs because 1. it encourages centralization on a proprietary platform 2. we are already running into API rate limits with just the info we currently gather (stars count + last commit date). And we would need a way to store this graph information in the raw YAML data somehow. If you want to create an issue for this, to gather more feedback and so it can be discussed further, please do!

[–] m4z 1 points 1 year ago (1 children)

I am wary of adding too much information that relies on Github APIs because 1. it encourages centralization on a proprietary platform

Couldnt agree more! This is why I decided not to use discussions or issue count since those are GitHub specific. Commit count could be gathered from any platform that uses git.

  1. we are already running into API rate limits with just the info we currently gather (stars count + last commit date).

Im using the GitHub GraphQL API to query all necessary information for 100 repos at a time, including commit count per month. The rate limit for GraphQL is allowing up to 5000 points per hour and on of these queries only costs 1 point. Herre is my code to generate the query: https://github.com/mkitzmann/awwesome/blob/main/src/lib/query.ts

And we would need a way to store this graph information in the raw YAML data somehow. If you want to create an issue for this, to gather more feedback and so it can be discussed further, please do!

The Informationen is currently just „{month: count,…}“, so should be fairly simple to store in yml. I will create an issue for it.

[–] vegetaaaaaaa 2 points 1 year ago* (last edited 1 year ago)

The rate limit for GraphQL is allowing up to 5000 points per hour

When using the automatic GITHUB_TOKEN created for each GH actions workflow, the limit is only 1000 requests per hour [1]. The list has 1080 projects whose source is hosted on github, and we must do 2 API calls for each one because for some reason the date of last commit to the default branch is not available directly from the repos API endpoint [2] (do not trust updated_at/pushed_at, it's a lie). So we currently have to add a sleep of ~7 seconds between each API call to not hit the rate limit for the metadata update job that runs daily.

The limit of 5000 requests/hour only applies to personal access tokens which have far too many permissions on my personal account to be used in a shared/community project.

Someone in https://old.reddit.com/r/selfhosted/comments/15y7y36 mentioned https://analyzemyrepo.com/analyze/inventree/InvenTree which may be interesting to integrate somehow.