phase 0 complete

This commit is contained in:
2026-08-14 11:29:11 -06:00
parent 4da16c7573
commit 85df9a208e
102 changed files with 25019 additions and 30 deletions
+82
View File
@@ -0,0 +1,82 @@
#!/usr/bin/env bash
# get-fonts.sh — Download all self-hosted font assets for Soft UI Dashboard Tailwind
#
# Run from your project root:
# bash path/to/get-fonts.sh
#
# Outputs to: public/assets/fonts/ and public/assets/css/fontawesome/
# Requires: curl, unzip
set -e
FONTS_DIR="public/assets/fonts"
CSS_DIR="public/assets/css"
TMP="$(mktemp -d)"
echo "→ Creating directories..."
mkdir -p "$FONTS_DIR/open-sans"
mkdir -p "$CSS_DIR/fontawesome"
# ─────────────────────────────────────────────────────────────
# 1. Open Sans (woff2 only — modern browsers, smallest files)
# Source: fontsource open-sans package on npm registry (public files)
# ─────────────────────────────────────────────────────────────
echo "→ Downloading Open Sans woff2 files..."
BASE="https://cdn.jsdelivr.net/npm/@fontsource/open-sans@5/files"
for WEIGHT in 300 400 600 700; do
curl -fsSL "${BASE}/open-sans-latin-${WEIGHT}-normal.woff2" \
-o "${FONTS_DIR}/open-sans/open-sans-${WEIGHT}.woff2"
curl -fsSL "${BASE}/open-sans-latin-${WEIGHT}-italic.woff2" \
-o "${FONTS_DIR}/open-sans/open-sans-${WEIGHT}italic.woff2"
done
echo " ✓ Open Sans done (8 files)"
# ─────────────────────────────────────────────────────────────
# 2. Font Awesome Free 6 (CSS + webfonts)
# Only the files actually needed: all.min.css + webfonts/
# ─────────────────────────────────────────────────────────────
echo "→ Downloading Font Awesome Free 6..."
FA_VERSION="6.4.0"
FA_ZIP="$TMP/fontawesome.zip"
curl -fsSL "https://github.com/FortAwesome/Font-Awesome/releases/download/${FA_VERSION}/fontawesome-free-${FA_VERSION}-web.zip" \
-o "$FA_ZIP"
unzip -q "$FA_ZIP" -d "$TMP"
FA_DIR="$TMP/fontawesome-free-${FA_VERSION}-web"
# CSS
cp "${FA_DIR}/css/all.min.css" "${CSS_DIR}/fontawesome/all.min.css"
cp "${FA_DIR}/css/all.css" "${CSS_DIR}/fontawesome/all.css"
# Webfonts (woff2 + woff — skip eot/ttf/svg for modern projects)
mkdir -p "${CSS_DIR}/fontawesome/webfonts"
find "${FA_DIR}/webfonts" \( -name "*.woff2" -o -name "*.woff" \) \
-exec cp {} "${CSS_DIR}/fontawesome/webfonts/" \;
# Patch font paths in all.min.css to match our directory structure
# FA expects webfonts/ relative to the CSS file — already correct since both are in fontawesome/
echo " ✓ Font Awesome done"
# ─────────────────────────────────────────────────────────────
# 3. Copy open-sans.css into project CSS dir
# ─────────────────────────────────────────────────────────────
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cp "${SCRIPT_DIR}/open-sans.css" "${CSS_DIR}/open-sans.css"
echo " ✓ open-sans.css copied"
# Cleanup
rm -rf "$TMP"
echo ""
echo "Done. Add these to your HTML <head>:"
echo ""
echo " <link href=\"/assets/css/open-sans.css\" rel=\"stylesheet\" />"
echo " <link href=\"/assets/css/fontawesome/all.min.css\" rel=\"stylesheet\" />"
echo " <link href=\"/assets/css/nucleo-icons.css\" rel=\"stylesheet\" />"
echo " <link href=\"/assets/css/nucleo-svg.css\" rel=\"stylesheet\" />"
echo " <link href=\"/assets/css/soft-ui-dashboard-tailwind.css\" rel=\"stylesheet\" />"