Launch checklist
Items to verify before the image editor reaches your users.
Check these items before your users see the image editor.
Checklist
License
- Use a production key for your domain. A development key works only on your own computer. See License keys.
- Read the key from your configuration, not from code in your repository.
- Allow requests from the browser to the license server,
https://api.layermetry.com/social, or to your ownapiUrl. The editor works for 30 days without it, and then stops. See Service outages. - Log license problems with
onLicenseState, so that you see a refused or expiring key before your users report it. See Validation flow. - Note the expiry date of the key, and plan the renewal. See Expiry and renewal.
Keys of other services
- Send AI requests through
endpointUrlorrequestFn, or usehosted: truewith an enterprise licence from Layermetry (coming soon). Never put a key of an AI provider in the page. See AI providers. - Use
endpointUrlfor Pexels, Unsplash, and GIPHY. AnapiKeyis visible to anyone who opens the page. See Stock media. - Enforce your AI limits on your server.
maxPerSessioncounts in the browser only. See Session limits. - Check the user's session in every proxy and upload endpoint.
Files and storage
- Handle
onExport, and test Save & Exit with each format that your users need: PNG, JPEG, and PDF. See Export. - If users save templates, pass
onUploadAsset, so that pictures go to your storage and templates stay small. See Asset storage. - Make pictures in your storage allow cross-origin requests from your domain.
Interface
- Do not pass
showThemeCreator={true}in production. The Customization Studio button is hidden by default, and it is a tool for developers. See Theming. - Try the editor at the widths your users have. Below 960 pixels, it uses the compact layout. See Layout and sizing.
- Remove or hide the editor when
onCloseruns.
Content Security Policy
- If your page sends a Content Security Policy, allow what the editor needs. This policy was tested with the editor, a text template, an uploaded picture, and Save & Exit:
default-src 'self';
script-src 'self';
style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;
font-src 'self' https://fonts.gstatic.com data:;
img-src 'self' data: blob:;
connect-src 'self' https://api.layermetry.com data: blob:;
worker-src 'self' blob:The editor adds its styles to the page when it starts, so style-src needs 'unsafe-inline'. Add the addresses of your own services: your AI proxy and your stock proxies to connect-src, and the hosts of your pictures to img-src and connect-src.