When contributing to this repository, please check the issues first, and post a new one if relevant.
Searching for something? Here are the folder where you will find it
- I want to add repositories or endpoints missed by your indexer!
- Checkout the
assets
folder
- Checkout the
- I want to improve the website!
- Checkout the
src
folder. The main page is defined bySemanticIndex.tsx
- Checkout the
- I want to improve the indexing of the files (RDF files, SPARQL queries, etc)
- Checkout the
etl/index-shapes.py
script
- Checkout the
- I want to improve the metadata generation for SPARQL endpoints!
- Checkout the d2s
generate_metadata.py
file
- Checkout the d2s
- I want to add or improve queries used for the Shapes of Your grlc API
- Checkout the
api
folder
- Checkout the
To contribute:
-
Clone the repository 📥
git clone https://github.com/vemonet/shapes-of-you.git
cd shapes-of-you
- Create a new branch from the
main
branch, and go to this branch 🕊️
git checkout -b my-branch
- Run the API in development on http://localhost:19006 🛩
yarn install
yarn dev
- Add your changes in this branch 🦜
- Send a pull request to the
main
branch when your changes are done 📤
- Before sending a pull request, make sure the project still work as expected with the new changes properly integrated 🛫
- Send a pull request to the
main
branch 📤 - Project contributors will review your change, and answer the pull request as soon as they can ✔️
Potential future maintenance issues, and how to fix them:
- GitHub/GitLab/Gitee APIs could change, or get deprecated in the future. Updating to a new API will not be hard though, as we just rely on it to list the interesting repos for a topic, and get some basic metadata. The rest is done by
git clone
. Checkout thefetch_from_
functions in theetl/index-shapes.py
file to change the different services API queries and logic. - GitHub/GitLab/Gitee raw file URL model could change. We just need to change the
generate_github_file_url
function inetl/index-shapes.py
to adapt it to the new URL.
Some things to take into consideration if you are running this system:
- Use API tokens with minimal permissions granted for git services (to avoid publicly indexing your own private repositories)
- Do not use one of your regular password for the triplestore stored as secret.
- Prefer using GitHub runners, over sensible self-hosted runners, to run the GitHub Actions workflows.