diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3739a66530..09b18d895e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -5,6 +5,7 @@ First of all, thanks for taking the time to contribute! This project can only gr

Table of Content


-

Overview on Submitting Icon

+

Terms

+

Here are some terms that we will use in this repo:

+
    +
  1. "Icon" refers to the set of svgs/icons of a technology/tool. Ex: We might refer to the React svgs and React icons as the React Icon
  2. +
  3. "SVG/.svg" refers to the svg versions of the Icons.
  4. +
  5. "icons" refers to the icon versions of the Icons.
  6. +
+ +
+

Overview on Submitting Icons

Here is an overview of what you have to do to submit your icons to the repo.

    -
  1. Create the svgs for each logo versions that you have
  2. -
  3. Put the svgs for each logo into its own folders in /icons
  4. -
  5. Update the devicon.json to include the new icon
  6. -
  7. Create a separated pull request (PR) for each icon (no matter how many versions).
  8. -
  9. Include the name of the icon in the pull request title. Follow this format: new icon: {{logoName}} ({{versions}})
  10. -
  11. Optional: Add images of the new icon(s) to the description of the pull request. This would help speed up the review process
  12. +
  13. Create the svgs for each svg versions that you have
  14. +
  15. Put the svgs of each Icon into its own folders in /icons
  16. +
  17. Update the devicon.json to include the new Icon
  18. +
  19. Create a separated pull request (PR) for each Icon.
  20. +
  21. Include the name of the Icon in the pull request title in this format: new icon: Icon name (versions)
  22. +
  23. Optional: Add images of the new svg(s) to the description of the pull request. This would help speed up the review process
  24. Optional: Reference the issues regarding the new icon.
  25. -
  26. Wait for a repo maintainer to review your changes. They will run a script to check your icons.
  27. +
  28. Wait for a maintainer to review your changes. They will run a script to check your icons.
  29. If there are no issue, they will accept your PR into the repo. Else, they will let you know and give you a chance to fix it.

Versions and Naming Conventions

-

Each icon can come in different versions. So far, we have:

+

Each icon/svg can come in different versions. So far, we have:

-

-It is not mandatory to have 6 versions for each icon. An icon can only have one or two versions available. Just keep in mind that the minimum is 1 and the maximum 6 (for now). You must also have at least one version that can be make into an icon. -

-

-The plain and line versions (with or without wordmark) are designed to be available in the final icon font. -

-

-The original version are only available in svg format, so they do not need to be as simple and can contain numerous colors. -

-

-Some icons are really simple (like the Apple one), so the original version can be used as the plain version and as the icon font. In this case, you'll only need to make only one of the version (either "original" or "plain"). You can then add an alias in the devicon.json so they can be found with either the "original" or "plain" naming convention. Note that this only applies to font icon versions only, not the SVG versions. SVG versions don't need aliases. -

+

Notes

+


SVG Standards

Before you submit your logos/svgs, please ensure that they meet the following standard:


Organizational Guidelines

@@ -81,7 +96,7 @@ Some icons are really simple (like the Apple one), so the original version can b Before you open a PR into Devicon, you'd have to update the devicon.json. This is essential for our build script to work and to document your work.

- Here is the object that each of your logo must have: + Here is the object that each of your Icon must have:

@@ -103,7 +118,7 @@ Some icons are really simple (like the Apple one), so the original version can b
   Here is what VersionString means:
 

    -
  1. It's the version part of an `svg` file's name
  2. +
  3. It's the version part of an svg file's name
  4. If you have "html5-original", the version string would be "original"
  5. If you have "react-line-wordmark", the version string would be "line-wordmark"
  6. See naming conventions section for more details
  7. @@ -127,19 +142,19 @@ Some icons are really simple (like the Apple one), so the original version can b As an example, let's assume you have created the svgs for Redhat and Amazon Web Services logos.

    For the Redhat svg, you have the "original", "original-wordmark", "plain", and "plain-wordmark" versions.

    -

    For the Amazon Web Services svgs, you have the following versions: "original", "original-wordmark", "plain-wordmark". The "original" version is simple enough to be a "plain" version as well. Note that we are not using the acronym AWS.

    +

    For the Amazon Web Services svgs, you have the "original", "original-wordmark", "plain-wordmark" versions. The "original" version is simple enough to be a "plain" version as well. Note that we are not using the acronym AWS.

    1. Put the svgs for each logo that you have into its own folders in /icons
      • This means you would create two folders: one for amazonwebservices and one for redhat
      • -
      • Note: don't do this in the same commits. We want to have each logo in its own PR so don't create these two folders in the same commit
      • +
      • Note: don't do this in the same commits; we want to have each Icon in its own PR.
    2. - Update the devicon.json to include the icon (or variations) + Update the devicon.json
        -
      • For the redhat, you would do this +
      • For redhat, you would do this
                   
                     {
        @@ -200,10 +215,9 @@ As an example, let's assume you have created the svgs for Redhat and Amazon Web
                   
                 
      • -
      • Note: again, don't do this in the same commits. We want to have each logo in its own PR so don't create two folders in the same commit
    3. -
    4. Create a separate pull request (PR) for each icon (no matter how many variations). +
    5. Create a separate pull request (PR) for each Icon.
      • This means you would have to create two PRs
      • For Amazon Web Services, the branch name would be icons/amazonwebservices.
      • @@ -211,7 +225,7 @@ As an example, let's assume you have created the svgs for Redhat and Amazon Web
    6. - Include the name of the icon in the pull request. Follow this format: "new icon: {{logoName}} ({{versions}})" + Include the name of the icon in the pull request. Follow this format: "new icon: Icon name (versions}})"
      • For Amazon Web Services, your PR title should be "new icon: amazonwebservices (original, original-wordmark, plain-wordmark)"
      • For Redhat, your PR title should be "new icon: redhat (original, original-wordmark, plain, plain-wordmark)"
      • @@ -222,12 +236,12 @@ As an example, let's assume you have created the svgs for Redhat and Amazon Web

        Requesting an Icon

        -

        When you want to request a new icon please feel free to create a issue following some simple guidelines:

        +

        To request an icon, you can create an issue in the repo. Please follow these simple guidelines:

        • Search for other issues already requesting the icon
        • If an issue doesn't exist, create an issue naming it "Icon request: name-of-the-icon".
        • -
        • Please create separated issues for each icon
        • -
        • optional: Include links where the icon can be found
        • +
        • Please create a separate issues for each icon
        • +
        • Optional: include links where the icon can be found

        @@ -241,5 +255,6 @@ As an example, let's assume you have created the svgs for Redhat and Amazon Web

        There are also other tasks that we are automating, such as:

        • Ensure code quality is up to standard
        • -
        • Upload svgs to icomoon.io and take a screenshot for check. +
        • Upload svgs to icomoon.io and take a screenshot to check that it looks good. +
        • Comment on the PR so maintainers don't have to manually upload icon result.
        \ No newline at end of file