chore: rename Stirling-Image to ashim across entire codebase

Complete rebrand from Stirling-Image to ashim following the project
move to https://github.com/ashim-hq/ashim.

Changes across 117 files:
- Package scope: @stirling-image/* → @ashim/*
- GitHub URLs: stirling-image/stirling-image → ashim-hq/ashim
- Docker Hub: stirlingimage/stirling-image → ashimhq/ashim
- GitHub Pages: stirling-image.github.io → ashim-hq.github.io
- All branding text: "Stirling Image" → "ashim"
- Docker service/volumes/user: stirling → ashim
- Database: stirling.db → ashim.db
- localStorage keys: stirling-token → ashim-token
- Environment variables: STIRLING_GPU → ASHIM_GPU
- Python cache dirs: .cache/stirling-image → .cache/ashim
- SVG filter IDs, test prefixes, and all other references
This commit is contained in:
Siddharth Kumar Sah
2026-04-14 20:55:42 +08:00
parent da4411330f
commit 85b1cfc10a
117 changed files with 710 additions and 713 deletions
+7 -7
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
# ============================================
# Stirling Image - Unified Production Dockerfile
# ashim - Unified Production Dockerfile
# Single image: GPU auto-detected on amd64, CPU on arm64
# ============================================
@@ -33,7 +33,7 @@ COPY . .
# Build only the web frontend (API runs from TS source via tsx)
RUN --mount=type=cache,id=turbo-cache,target=/app/.turbo \
pnpm --filter @stirling-image/web build
pnpm --filter @ashim/web build
# ============================================
# Stage 2: Build caire (content-aware resize)
@@ -199,13 +199,13 @@ ENV PORT=1349 \
DEFAULT_USERNAME=admin \
DEFAULT_PASSWORD=admin \
STORAGE_MODE=local \
DB_PATH=/data/stirling.db \
DB_PATH=/data/ashim.db \
WORKSPACE_PATH=/tmp/workspace \
FILES_STORAGE_PATH=/data/files \
PYTHON_VENV_PATH=/opt/venv \
DEFAULT_THEME=light \
DEFAULT_LOCALE=en \
APP_NAME="Stirling Image" \
APP_NAME="ashim" \
FILE_MAX_AGE_HOURS=24 \
CLEANUP_INTERVAL_MINUTES=30 \
MAX_UPLOAD_SIZE_MB=100 \
@@ -225,10 +225,10 @@ ENV PYTHONWARNINGS=ignore \
PADDLE_PDX_DISABLE_MODEL_SOURCE_CHECK=True
# Create non-root user for runtime
RUN groupadd -r stirling && useradd -r -g stirling -d /app -s /sbin/nologin stirling
RUN chown -R stirling:stirling /app /data /tmp/workspace /opt/venv /opt/models
RUN groupadd -r ashim && useradd -r -g ashim -d /app -s /sbin/nologin ashim
RUN chown -R ashim:ashim /app /data /tmp/workspace /opt/venv /opt/models
# Entrypoint fixes volume permissions then drops to stirling via gosu
# Entrypoint fixes volume permissions then drops to ashim via gosu
COPY docker/entrypoint.sh /usr/local/bin/entrypoint.sh
RUN chmod +x /usr/local/bin/entrypoint.sh
+2 -2
View File
@@ -1,5 +1,5 @@
# ============================================
# Stirling Image - Test Dockerfile
# ashim - Test Dockerfile
# Runs the full test suite (unit + integration)
# ============================================
@@ -30,7 +30,7 @@ ENV NODE_ENV=test \
AUTH_ENABLED=true \
DEFAULT_USERNAME=admin \
DEFAULT_PASSWORD=admin \
DB_PATH=/tmp/test-stirling.db \
DB_PATH=/tmp/test-ashim.db \
WORKSPACE_PATH=/tmp/test-workspace \
MAX_MEGAPIXELS=100 \
MAX_UPLOAD_SIZE_MB=100 \
+4 -4
View File
@@ -8,14 +8,14 @@ services:
build:
context: ..
dockerfile: docker/Dockerfile.test
container_name: stirling-test-unit
container_name: ashim-test-unit
command: ["pnpm", "test:ci"]
environment:
- NODE_ENV=test
- AUTH_ENABLED=true
- DEFAULT_USERNAME=admin
- DEFAULT_PASSWORD=admin
- DB_PATH=/tmp/test-stirling.db
- DB_PATH=/tmp/test-ashim.db
- WORKSPACE_PATH=/tmp/test-workspace
- MAX_MEGAPIXELS=100
- RATE_LIMIT_PER_MIN=1000
@@ -28,14 +28,14 @@ services:
build:
context: ..
dockerfile: docker/Dockerfile.test
container_name: stirling-test-e2e
container_name: ashim-test-e2e
command: ["sh", "-c", "npx playwright install --with-deps chromium && pnpm test:e2e"]
environment:
- NODE_ENV=test
- AUTH_ENABLED=true
- DEFAULT_USERNAME=admin
- DEFAULT_PASSWORD=admin
- DB_PATH=/tmp/test-stirling.db
- DB_PATH=/tmp/test-ashim.db
- WORKSPACE_PATH=/tmp/test-workspace
- MAX_MEGAPIXELS=100
- RATE_LIMIT_PER_MIN=1000
+7 -7
View File
@@ -1,15 +1,15 @@
services:
stirling-image:
ashim:
build:
context: ..
dockerfile: docker/Dockerfile
image: stirlingimage/stirling-image:latest
container_name: stirling-image
image: ashimhq/ashim:latest
container_name: ashim
ports:
- "1349:1349"
volumes:
- stirling-data:/data
- stirling-workspace:/tmp/workspace
- ashim-data:/data
- ashim-workspace:/tmp/workspace
environment:
- AUTH_ENABLED=true
- DEFAULT_USERNAME=admin
@@ -22,5 +22,5 @@ services:
max-file: "3"
volumes:
stirling-data:
stirling-workspace:
ashim-data:
ashim-workspace:
+1 -1
View File
@@ -9,7 +9,7 @@ import urllib.request
# Some servers (e.g. Berkeley) block the default Python-urllib User-Agent.
_opener = urllib.request.build_opener()
_opener.addheaders = [("User-Agent", "Stirling-Image/1.0")]
_opener.addheaders = [("User-Agent", "ashim/1.0")]
urllib.request.install_opener(_opener)
# Force CPU mode during build - no GPU driver available at build time.
+5 -5
View File
@@ -1,13 +1,13 @@
#!/bin/sh
set -e
# Fix ownership of mounted volumes so the non-root stirling user can write.
# This runs as root, fixes permissions, then drops to stirling via gosu.
# Fix ownership of mounted volumes so the non-root ashim user can write.
# This runs as root, fixes permissions, then drops to ashim via gosu.
if [ "$(id -u)" = "0" ]; then
chown -R stirling:stirling /data /tmp/workspace 2>&1 || \
chown -R ashim:ashim /data /tmp/workspace 2>&1 || \
echo "WARNING: Could not fix volume permissions. If processing fails, check your volume mount permissions." >&2
exec gosu stirling "$@"
exec gosu ashim "$@"
fi
# Already running as stirling (e.g. Kubernetes runAsUser)
# Already running as ashim (e.g. Kubernetes runAsUser)
exec "$@"