Skip to main content
Module

x/esm/config.example.jsonc

A fast, global CDN for NPM packages with ESM format.
Go to Latest
File
{ // The port to listen server on for HTTP, default is 8080. "port": 8080, // The port to listen server on for HTTPs, default is 0 (disabled). Change to 443 if you want to enable it. // You don't need to provide a certificate, it will generate automatically by autocert. "tlsPort": 0, // The port to listen server on for node service, default is 8088 (do not change if you don't know what you are doing). "nsPort": 8088, // The build max concurrency, default equals to the number of CPUs. "buildConcurrency": 0, // The work directory for the server app, default is "~/.esmd". "workDir": "~/.esmd", // The cache url, default is "memory:default". // You can also implement your own cache by implementing the `Cache` interface // in https://github.com/esm-dev/esm.sh/blob/main/server/storage/cache.go "cache": "memory:default", // The database url, default is "bolt:~/.esmd/esm.db". // You can also implement your own database by implementing the `DataBase` interface // in https://github.com/esm-dev/esm.sh/blob/main/server/storage/db.go "database": "bolt:~/.esmd/esm.db", // The file storage url, default is "local:~/.esmd/storage". // You can also implement your own file storage by implementing the `FileSystem` interface // in https://github.com/esm-dev/esm.sh/blob/main/server/storage/fs.go "storage": "local:~/.esmd/storage", // The log level, default is "info", you can also set it to "debug" to enable debug logs. "logLevel": "info", // The log directory, default is "~/.esmd/log". "logDir": "~/.esmd/log", // The origin of modules, default is using the origin of the request. "origin": "", // The base path of server, default is "/". "basePath": "/", // The npm registry, default is "https://registry.npmjs.org/". "npmRegistry": "https://registry.npmjs.org/", // The npm token for private packages, default is empty. "npmToken": "", // The npm cdn to fetch non-module files, default is "https://esm.sh". "npmCDN": "https://esm.sh", // Disable compressing the response, default is false. "noCompress": false, // The list to ban some packages or scopes. "banList": { "packages": ["@some_scope/package_name"], "scopes": [{ "name": "@your_scope", "excludes": [ "package_name" ] }] }}