Here I will guide you through the process of making social media links more accessible.
We will start with the worst-case scenario and work towards a decent design.
Plain Icons . this is bad practice.
The most minimal display of social media links can be achieved with icons.
This has absolutely no accessibility to people relying on screen readers,
as the links will just be announced as "link".
Icons with additional text have the benefit of being properly announced by a screen reader
and allow people unfamiliar with the icon to still understand the targeted website's name.
One problem with this is the lack of specificity. A person using a screen reader will only hear
"link GitHub", which could as well just link to the main page of that website rather than a specific profile.
A sighted person could infer by the above text ("My social media") that the links lead to your individual page.
Plain Icons With ARIA-Label . this is good practice.
Just adding an aria-label to each icon is a major step up from the complete lack of accessibility we previously had,
and using more complete information like "My [platform] Profile" makes it clearer to which part of a site the link leads.
This can be enough if your goal is to keep the minimal design but still might be less accessible
even to sighted people having limited familiarity with these platforms and their icons.
They may know what GitHub and Reddit are but may be unaware of how their branding looks.
Altough my testing with modern systems and browsers has shown fontawesome icons not being announced incorrectly as they have an empty text content,
it is generally considered to be best practice to add aria-hidden="true" to all decorative icons.
Other icon libraries might rely on alphanumeric symbols (or other text characters) with custom fonts to be stylized.
Those would be pronounced as the actual character.
A very unlikely but still effective example would be Wingdings C pronounced as the letter "C".
When in doubt, use the accessibility tree to view the text.