Thank you for your interest in contributing to Octicons! If you'd like to submit feedback, a bug, or an idea for improvement, please open a new issue in this repo using the appropriate issue template.
Follow these steps to add or update an icon.
# Clone the repository
git clone https://github.com/opf/openproject-octicons
# Navigate to the newly cloned directory
cd openproject-octicons
If you don't have write
access to the opf/openproject-octicons repository, instead of cloning the repository directly, you'll need to fork the project, clone your fork, and configure the remotes:
# Clone your fork of the repository
git clone https://github.com/<your-username>/openproject-octicons
# Navigate to the newly cloned directory
cd openproject-octicons
# Assign the original repo to a remote called "upstream"
git remote add upstream https://github.com/opf/openproject-octicons
git checkout -b <branch-name>
Be sure to add SVG files with the correct naming (suffix -16
required,
suffixes -12
and -24
are optional). Check for the correct viewBox
inside the SVG, but do not bother with fill
, fill-rule
, or clip-rule
attributes, as those are removed by the CI step "Optimize SVGs".
{
"mark-github": ["octocat", "brand", "github", "logo"],
+ "your-icon": ["foo", "bar"]
}
For release dependent Pull Requests, add a changeset file to your Pull Request. These files are needed for the release process managed by Changesets.
- Install (if you have not done before)
npm install @changesets/cli && npx changeset init
- Create a changeset
npx changeset
- Select version type (patch, minor, major)
- Type a message explaining your changes (equivalent to release notes)
git add .
git commit -m <message>
git push
Use GitHub to create a pull request for your branch. In your pull request description, be sure to mention where the icon will be used and any relevant timeline information.
If everything looks good, a maintainer will approve and merge the pull request when appropriate. After the pull request is merged, your icon will be available in the next Octicons release.
When contributing to Octicons outside of adding a new icon or release-dependent contribution, you don't have to add a Changeset file.
Examples of other contributions include adding documentation or improving a GitHub Actions workflows.