create-whiskeyjack
v0.6.8
Published
Scaffold a thumb-first app on the Whiskeyjack design system, wired for desktop and mobile via Tauri.
Maintainers
Readme
create-whiskeyjack
Scaffold a thumb-first app on the Whiskeyjack design system, wired for one web codebase delivered to desktop and mobile via Tauri.
npm create whiskeyjack@latest my-app
# or
npx create-whiskeyjack my-appThen:
cd my-app
npm install
npm run devMaking it a PWA
Opt-in, and it takes icons you have already exported:
npm create whiskeyjack@latest my-app -- --pwa ./iconsThe flag verifies the required PWA sizes are present, copies them into
public/ under canonical names, and wires vite-plugin-pwa with a matching
manifest. Required: 192x192, 512x512, and a maskable variant of each.
Optional but used when found: a 180x180 apple-touch-icon and a favicon.ico.
Icons are matched by their real dimensions rather than by filename, so any
reasonable export works – icon-192.png, pwa-192x192.png,
android-chrome-192x192.png. The scan is recursive, so pointing at an unzipped
export with per-platform subfolders is fine. Only "maskable" has to come from the
name or folder, because nothing in a PNG records that a design carries safe-area
padding.
If a required size is missing the scaffold stops before writing anything and names what it could not find. It does no image processing and depends on no icon tool. Icon Stack produces the whole set from one image:
npx @whiskeyjack-net/icon-stack generate \
--source icon.png --platforms pwa,favicon,appleTouchIcon --out iconsWithout --pwa you get no service worker and no manifest, which is the right
default: a service worker in a project that did not ask for one caches
aggressively, stays invisible until it misbehaves, and takes a tombstone worker to
retire.
What you get
The starter template: the design-system app shell
(AppShell / AppHeader / HeaderNav / AppMain / MobileBottomNav),
theming via useTheme, createI18n internationalization with RTL sync, the
Tauri window-control shell (inert on the web), a Home + Settings page, and the
AI-native .claude layer pre-wired – CLAUDE.md, path-scoped rules, web-dev /
reviewer / accessibility agents, and /add-i18n-key / /build / /review
skills.
The scaffolder renames the app for you (package.json, the page title, the
app.name locale key, the theme storage key). Make it yours by replacing
src/pages/Home.tsx and adding your own routes, locales, and accent theme.
License
MIT
