Replies: 1 comment
-
This sounds like an amazing idea! It would make things much easier for both the maintainers and contributors. If you need any help, let us know! You can also contact us on our Discord server. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi all,
I thought it would be best to post this proposal as a discussion instead of an issue, as it might require a few iterations before it takes its final form.
Motivation
When I started preparing for my first icon contribution, I wasn't sure which versions to create, and the documentation wasn't clear enough. Given that I like to learn by example, I checked the
devicon.json
and theicons/
directory to help me figure out any patterns, but that made it even worse, as I quickly identified some inconsistencies. As a result, I have been thinking about how to simplify the identification process of what icon versions a given technology needs to have.Proposal
The proposal has the following parts:
Rules
.svg
files for each technology must be listed in theversions.svg
list.original
version.versions.font
list, which contains the versions used when generating the font, shouldn't be empty.Questions
For a given technology:
Is there a multi-color **AND** a plain version icon?
Positive examples would be technologies that have logos with multiple colors or gradients, while negative would be simple monochromatic logos.Is there a version for this technology that has **extra** text?
The word "extra" here is to differentiate between logos that do not have a version without any letters (e.g., AWS)Is there a line version, or can one be created?
When answering all the questions and in combination with the rules above, there is a truth table that can be used to list precisely which versions need to be added. For a demonstration of the algorithm, I quickly put together this page, where a checked checkmark denotes "Yes" to the answer.
Effects
If the above proposal is accepted, it will result in the following changes:
devicon.json
simplifications:versions.svg
list in thedevicon.json
as it can be easily generated by GitHub Actions by the contents of the correspondingicon/
sub-directory for each technology. On the other hand, I think theversions.font
list remains useful, as some versions might not look nice as fonts (look a the footnotes on the demo page).aliases
to be defined in thedevicon.json.
If we still need to have them for consistency purposes (e.g., always have a "plain" font version), this can be automated by the GitHub Actions.devicon.json
analyzer script can be used to verify that the provided versions are a valid combination and notify the PR author. The same script can also be used to fix existing violations.Beta Was this translation helpful? Give feedback.
All reactions