No description
Find a file
2022-04-13 12:17:14 +05:30
.github feat: test only db-sqlx-sqlite workspace 2022-04-12 17:45:35 +05:30
config feat: configuration option for wait time before next API call 2022-04-06 10:05:34 +05:30
db feat: implement SCDatabase for sqlite 2022-04-12 17:48:05 +05:30
docs feat: add hacking instructions(wip) 2022-04-13 12:17:14 +05:30
scripts feat: spin up Gitea instance for development and testing 2022-04-06 10:06:14 +05:30
src fix: loading sqlite database URL from env var 2022-04-12 17:17:24 +05:30
tests/schema/gitea feat: Gitea search results datatypes 2022-04-02 16:18:51 +05:30
.env-sample feat: verify DNS TXT challenge 2022-03-28 12:20:03 +05:30
.gitignore feat: spin up and install Gitea and create new user for testing 2022-04-06 09:24:15 +05:30
build.rs feat: add build.rs setup 2022-04-02 16:28:56 +05:30
Cargo.lock feat: migrator binary 2022-04-12 17:34:25 +05:30
Cargo.toml feat: migrator binary 2022-04-12 17:34:25 +05:30
docker-compose-dev-deps.yml feat: spin up and install Gitea and create new user for testing 2022-04-06 09:24:15 +05:30
LICENSE.md feat: add license 2022-03-28 11:50:16 +05:30
Makefile feat: mod make to work with only db-sqlx-sqlite workspace 2022-04-12 17:46:53 +05:30
README.md feat: add readme 2022-03-30 13:48:54 +05:30

ForgeFlux StarChart

Documentation Build dependency status codecov
AGPL License Chat

Why

There are several small, private forges that host Free Software projects. Some of these Forges might one day participate in the federated ecosystem. So it would make sense to have a system(see spider mechanism) that would map and advertise these instances and the projects that they host.

Consensual Spidering

We are aware that spiders some very aggressive and small forges are often running on resource-constrained environments. Therefore, StarChart(this spider) will only crawl a service if the crawl is requested by the admin of the forge(more accurately, folks that have access to the DNS associated with the forge's hostname though).

StarChart will rate limit API calls to one call every 10 seconds. For instance, a Gitea API call would resemble:

curl -X 'GET' \
  'https://gitea.example.org/api/v1/repos/search?page=2&limit=20' \
  -H 'accept: application/json'

Contributing

Thanks for considering contributing on GitHub. If you are not an GitHub but would like to contribute to ForgeFlux sub-projects(all repositories under this organisation), I would be happy to manually mirror this repository on my Gitea instance, which has a much more respectful privacy policy