Thank you for your interest in contributing to the Ontology Playground! This project welcomes contributions and suggestions.
Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
- Use GitHub Issues to report bugs or request features
- Include steps to reproduce for bugs
- Search existing issues before creating a new one
The easiest way to contribute is to add an ontology to the community catalogue:
- Fork this repository
- Create a directory for your ontology:
catalogue/community/<your-github-username>/<ontology-slug>/ - Add two files:
<ontology-slug>.rdf— your ontology in RDF/OWL format (you can export from the Ontology Playground UI)metadata.json— metadata describing your ontology:{ "id": "<ontology-slug>", "name": "My Ontology", "description": "A short description of what this ontology models", "icon": "🔧", "category": "general", "tags": ["example", "tutorial"], "author": "<your-github-username>" }
- Validate locally:
npm ci npm run catalogue:build # must succeed npm test # all tests must pass
- Open a Pull Request against the
mainbranch- CI will automatically validate your RDF and metadata
- A maintainer will review and merge
The metadata.json file must conform to the schema at
catalogue/metadata-schema.json.
| Field | Required | Description |
|---|---|---|
id |
Yes | URL-safe slug (lowercase-with-hyphens) |
name |
Yes | Human-readable name |
description |
Yes | Short description |
category |
Yes | One of: retail, healthcare, finance, manufacturing, education, general |
icon |
No | Emoji icon for display |
tags |
No | Array of tags for filtering |
author |
No | Your GitHub username or name |
- Fork and create a feature branch:
feature/<feature-name> - Follow the coding conventions in AGENTS.md
- Write tests for new functionality
- Ensure the build passes:
npm run build # includes catalogue compilation + TypeScript + Vite npm test # all tests must pass
- Open a Pull Request with a clear description of changes
git clone https://github.com/<your-fork>/Ontology-Playground.git
cd Ontology-Playground
npm install
npm run dev # start development server
npm test # run tests
npm run build # full production buildBy contributing, you agree that your contributions will be licensed under the MIT License.