SOURCE
Local SVG only
SVG doctypes are accepted without fetching their DTD. External entities are rejected.
DEVELOPMENT / PROJECT ICONS
One SVG, every app icon
Generate web, desktop, iOS, and Android icon sets with the Dowe utilities included in Dowe.
Open Testing docs
GENERATION
Keep the vector source simple
Use icon.svg in the project root or assets/icon.svg. Dowe asks for the path first, then an opaque hexadecimal background, rounded value, and target selection.
The dowe icons namespace only generates application assets. D1 migration utilities use the separate dowe d1 namespace.
dowe icons
dowe icons --source assets/icon.svg --background '#ffffff' --rounded md
dowe icons --source icon.svg --background '#111827' --rounded full --target web --target desktopSOURCE
Local SVG only
SVG doctypes are accepted without fetching their DTD. External entities are rejected.
COMPOSITION
Centered and scaled
The logo keeps its aspect ratio and occupies at most seventy percent of a square canvas.
DEPENDENCIES
Included in Dowe
Projects do not need Dowe, Node.js, ImageMagick, or another image utility.
VERSIONED ASSETS
Commit assets, regenerate safely
Dowe writes target folders and a deterministic manifest below assets/icons. Regenerating selected targets removes their stale files and preserves every unselected platform.
assets/
icon.svg
icons/
manifest.json
web/
desktop/
ios/
android/Web receives favicon and touch icons. Desktop receives ICO, ICNS, and PNG. iOS receives an AppIcon asset catalog, while Android receives legacy, round, and adaptive launcher resources.
DEVELOPMENT SYNC
Regeneration reaches every target
dowe dev watches assets/icons and synchronizes current copies into disposable .dowe output. Web avoids stale icon caching, desktop hosts consume their native format, and mobile builds receive their launcher resources.
Source of truth
Commit assets/icons and never edit the copies generated below .dowe.
Native refresh
iOS rebuilds its host when icon assets or bundle metadata change.