Clients line: a count of 0 (or an absent count) now renders NO line at all — never "0 clients", never a dash. The >=1 rules (the plural, the plain number) are unchanged. Same rule in the runtime renderer and in build-directory.py. Links row: LinkedIn/GitHub/Upwork/Fiverr now render as LOGO ONLY. The four marks are one uniform monochrome set (Simple Icons v13, 24x24, single-path), inlined so the row makes no request and each mark inherits currentColor. Self-hosted copies in static/icons/. Each link keeps its accessible name (aria-label + title, e.g. "GitHub profile"); the inline SVG is aria-hidden + focusable=false; the hit area is 36x36 around a 24px mark, with a visible focus ring. A null/blank link value still renders no anchor (no empty icon).
static/icons — the profile-link icon set
Four monochrome brand marks shown in the freelancer directory card's links row
(/odoo-community-developers/): LinkedIn, GitHub, Upwork, Fiverr.
Source: Simple Icons v13 — one uniform set, so the four share one visual language by construction: the same 24 × 24 grid, the same internal padding, the same monochrome mass, single-path art. Nothing here is hand-drawn and nothing is fetched from a third party at runtime.
How the page uses them. The card inlines the same path data (see LINK_ICONS in the
page's script and in work/build-directory.py), so the links row makes zero requests
and each mark inherits the link's currentColor. These files are the self-hosted,
drop-in copy of that set — identical geometry — for any host that prefers a file over an
inline <svg>.
Brand rule. A brand mark is never redrawn and never restyled beyond a single
monochrome fill. The one styling the page applies is fill="currentColor".
The role/aria-label here are for standalone use; the card strips them and marks the
inline SVG aria-hidden="true" focusable="false", putting the accessible name on the
link (aria-label + title, e.g. "GitHub profile").