- src/app/manifest.ts (Next 14 file convention) → /manifest.webmanifest - public/icons/icon.svg + icon-maskable.svg (vettoriali, palette editoriale) - scripts/generate-icons.mjs (sharp): genera icon-192/512.png, apple-touch-icon-180.png, icon-maskable-512.png, badge-72.png - layout.tsx: viewport con themeColor light/dark, manifest link, appleWebApp meta (capable + title), icons (svg + png + apple touch) - .eslintrc: ignora scripts Node out-of-project; lint-staged: .mjs format-only Display standalone, lang it, theme #221d18 (ink) / bg #f6f0df (carta). Sblocca "Installa app" su Chrome/Edge/Android e "Aggiungi alla Home" su iOS Safari — quest'ultimo è pre-requisito per ricevere le push su iOS. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
12 lines
336 B
JavaScript
12 lines
336 B
JavaScript
/** @type {import('eslint').Linter.Config} */
|
|
module.exports = {
|
|
root: true,
|
|
extends: ['@ketopath/eslint-config/nextjs.cjs'],
|
|
ignorePatterns: [
|
|
// Service worker servito al browser: out-of-project per il TS parser.
|
|
'public/**/*.js',
|
|
// Script Node ESM: out-of-project per il TS parser.
|
|
'scripts/**/*.mjs',
|
|
],
|
|
};
|