Configuration
Server configrations can be specified via option
parameters.
TIP
All parameters are optional!
import { createRequestHandler } from "@urami/core";
const handler = createRequestHandler({
avif: false,
remoteDomains: ["demo.rayriffy.com"],
allowedDomains: ["svelte-aio.vercel.app"],
ttl: 1000 * 60 * 60 * 24 * 7,
storePath: ".svelte-kit/images",
});
import { createRequestHandler } from "@urami/core";
const handler = createRequestHandler({
avif: false,
remoteDomains: ["demo.rayriffy.com"],
allowedDomains: ["svelte-aio.vercel.app"],
ttl: 1000 * 60 * 60 * 24 * 7,
storePath: ".svelte-kit/images",
});
avif
boolean
Enable AVIF image format. Defaults to false
WARNING
Optimizing image into AVIF format currently not reccomended due to high CPU and memory usage. Overall performance is not great when comparing to WebP.
remoteDomains
string[] | undefined
List of domains that API will be allowed to optimize. Defaults to unset
From example above, remoteDomains: ['demo.rayriffy.com']
means that API will only be allowed to optimize images that served from demo.rayriffy.com
.
Unset this option will tell API to optimize all images from everywhere
allowedDomains
string[] | undefined
List of domains that allowed to use the API, this will be checked via header Referer
Only applied when p
is set to production
. Unset this option will allow anywhere to request image from this API.
## defaultDomain
string | undefined
Default domain to use when domain is not specified in URL. Defaults to undefined
ttl
number
Time until images will become invalidated, defaults to 7 days
Values are in milliseconds
storePath
string
Directory path to cache optimized images. Defaults to .svelte-kit/images
Provided paths will be relative to process.cwd()