Convert mockup source images from JPG to WebP format for 76% size reduction (20MB → 4.7MB). Variants are now auto-generated on startup via Oban, keeping the same DRY approach as database images. Changes: - Add OptimizeWorker.enqueue_mockup/1 for filesystem images - Extend VariantCache to check mockup sources on startup - Update MockupGenerator to save source as optimized WebP - Update .gitignore to ignore generated variants - Convert 55 source mockups from JPG to WebP The mockup pipeline now uses the same code paths as database images: - Optimizer.to_optimized_webp/1 for source conversion - Optimizer.process_file/3 for variant generation - OptimizeWorker for Oban background processing - VariantCache for startup cache validation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
70 lines
1.7 KiB
Plaintext
70 lines
1.7 KiB
Plaintext
# The directory Mix will write compiled artifacts to.
|
|
/_build/
|
|
|
|
# If you run "mix test --cover", coverage assets end up here.
|
|
/cover/
|
|
|
|
# The directory Mix downloads your dependencies sources to.
|
|
/deps/
|
|
|
|
# Where 3rd-party dependencies like ExDoc output generated docs.
|
|
/doc/
|
|
|
|
# Ignore .fetch files in case you like to edit your project deps locally.
|
|
/.fetch
|
|
|
|
# If the VM crashes, it generates a dump, let's ignore it too.
|
|
erl_crash.dump
|
|
|
|
# Also ignore archive artifacts (built via "mix archive.build").
|
|
*.ez
|
|
|
|
# Temporary files, for example, from tests.
|
|
/tmp/
|
|
|
|
# Ignore package tarball (built via "mix hex.build").
|
|
simpleshop_theme-*.tar
|
|
|
|
# Ignore assets that are produced by build tools.
|
|
/priv/static/assets/
|
|
|
|
# Ignore digested assets cache.
|
|
/priv/static/cache_manifest.json
|
|
|
|
# Ignore digested versions of static files (with hash in filename)
|
|
# Keep source files, ignore build outputs
|
|
/priv/static/*-*.css
|
|
/priv/static/*-*.css.gz
|
|
/priv/static/*-*.js
|
|
/priv/static/*-*.js.gz
|
|
/priv/static/*-*.ico
|
|
/priv/static/*-*.txt
|
|
/priv/static/*-*.txt.gz
|
|
/priv/static/*-*.html
|
|
/priv/static/*-*.html.gz
|
|
/priv/static/*.gz
|
|
# Digested fonts have 32-char hash before extension
|
|
/priv/static/fonts/*-????????????????????????????????.woff2
|
|
/priv/static/images/*-*.svg
|
|
/priv/static/images/*-*.svg.gz
|
|
/priv/static/images/*.gz
|
|
|
|
# Generated mockup variants (auto-generated on startup via Oban)
|
|
# Source .webp files are tracked, variants are regenerated
|
|
/priv/static/mockups/*-400.*
|
|
/priv/static/mockups/*-800.*
|
|
/priv/static/mockups/*-1200.*
|
|
/priv/static/mockups/*-thumb.jpg
|
|
|
|
# Generated image variants cache (regenerated from source images)
|
|
/priv/static/image_cache/
|
|
|
|
# In case you use Node.js/npm, you want to ignore these.
|
|
npm-debug.log
|
|
/assets/node_modules/
|
|
|
|
# Database files
|
|
*.db
|
|
*.db-*
|
|
|