chore: sync all changes to Gitea
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled

- Config, docs, scripts, and backup manifests
- Submodule refs unchanged (m = modified content in submodules)

Made-with: Cursor
This commit is contained in:
defiQUG
2026-03-02 11:37:34 -08:00
parent ed85135249
commit b3a8fe4496
883 changed files with 73580 additions and 4796 deletions

View File

@@ -0,0 +1,85 @@
#!/usr/bin/env bash
# Prepare 512×512 PNG logos for CoinGecko/CMC token submission.
# Downloads logos from Trust Wallet (or provided URLs) and resizes to 512×512.
# Output: docs/04-configuration/coingecko/logos/ (gitignored by default).
#
# Requires: curl, and one of: convert (ImageMagick), magick (ImageMagick 7), sips (macOS), or python3+PIL
# Install ImageMagick for resize: apt install imagemagick / brew install imagemagick
# Usage: ./prepare-token-logos-512x512.sh [OUTPUT_DIR]
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
OUTPUT_DIR="${1:-${SCRIPT_DIR}/../logos}"
mkdir -p "$OUTPUT_DIR"
LOGO_BASE="https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets"
# Symbol -> URL (Trust Wallet mainnet addresses for USDC, USDT, WETH)
declare -A LOGOS=(
["WETH"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
["WETH10"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
["cUSDC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cUSDT"]="${LOGO_BASE}/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png"
["cEURC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cEURT"]="${LOGO_BASE}/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png"
["cGBPC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cGBPT"]="${LOGO_BASE}/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png"
["cAUDC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cJPYC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cCHFC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cCADC"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["cXAUC"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
["cXAUT"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
["LiXAU"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
["USDW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["EURW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["GBPW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["AUDW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["JPYW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["CHFW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["CADW"]="${LOGO_BASE}/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"
["LINK"]="${LOGO_BASE}/0x514910771AF9Ca656af840dff83E8264EcF986CA/logo.png"
["ETH-USD"]="${LOGO_BASE}/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2/logo.png"
)
resize_to_512() {
local src="$1"
local dst="$2"
if command -v convert &>/dev/null; then
convert "$src" -resize 512x512! -background none -gravity center -extent 512x512 "$dst"
elif command -v magick &>/dev/null; then
magick "$src" -resize 512x512! -background none -gravity center -extent 512x512 "$dst"
elif command -v sips &>/dev/null; then
sips -z 512 512 "$src" --out "$dst"
elif python3 -c "from PIL import Image" 2>/dev/null; then
python3 -c "
from PIL import Image
img = Image.open('$src').convert('RGBA')
img = img.resize((512, 512), Image.Resampling.LANCZOS)
img.save('$dst')
"
else
echo "No ImageMagick, sips, or PIL found. Copying without resize (may not be 512×512)." >&2
cp "$src" "$dst"
fi
}
echo "Preparing 512×512 PNG logos in $OUTPUT_DIR"
for symbol in "${!LOGOS[@]}"; do
url="${LOGOS[$symbol]}"
out="$OUTPUT_DIR/${symbol}-512x512.png"
tmp="$OUTPUT_DIR/.tmp-${symbol}.png"
if curl -sS -L -o "$tmp" "$url" 2>/dev/null && [ -s "$tmp" ]; then
resize_to_512 "$tmp" "$out"
rm -f "$tmp"
echo "$symbol -> $out"
else
echo "$symbol: failed to fetch $url"
rm -f "$tmp"
fi
done
echo ""
echo "Done. Logos in $OUTPUT_DIR"
echo "Use these for CoinGecko/CMC submission (512×512 PNG required)."