Type alias FoxxManifest

FoxxManifest: {
    author?: string;
    configuration?: Record<string, Configuration>;
    contributors?: string[];
    defaultDocument?: string;
    dependencies?: Record<string, string | Dependency>;
    description?: string;
    engines?: Record<string, string> & {
        arangodb?: string;
    };
    files?: Record<string, string | File>;
    keywords?: string[];
    lib?: string;
    license?: string;
    main?: string;
    name?: string;
    provides?: Record<string, string>;
    scripts?: Record<string, string>;
    tests?: string | string[];
    thumbnail?: string;
    version?: string;
}

Schema for ArangoDB Foxx service manifests.

Type declaration

  • Optional author?: string

    The full name of the author of the service (i.e. you). This will be shown in the web interface.

  • Optional configuration?: Record<string, Configuration>

    An object defining the configuration options this service requires.

  • Optional contributors?: string[]

    A list of names of people that have contributed to the development of the service in some way. This will be shown in the web interface.

  • Optional defaultDocument?: string

    If specified, the / (root) route of the service will automatically redirect to the given relative path, e.g. "index.html".

  • Optional dependencies?: Record<string, string | Dependency>

    The dependencies this service uses, i.e. which APIs its dependencies need to be compatible with.

  • Optional description?: string

    A human-readable description of the service. This will be shown in the web interface.

  • Optional engines?: Record<string, string> & {
        arangodb?: string;
    }

    An object indicating the semantic version ranges of ArangoDB (or compatible environments) the service will be compatible with.

  • Optional files?: Record<string, string | File>

    An object defining file assets served by this service.

  • Optional keywords?: string[]

    A list of keywords that help categorize this service. This is used by the Foxx Store installers to organize services.

  • Optional lib?: string

    The relative path to the Foxx JavaScript files in the service, e.g. "lib". Defaults to the folder containing this manifest.

  • Optional license?: string

    A string identifying the license under which the service is published, ideally in the form of an SPDX license identifier. This will be shown in the web interface.

  • Optional main?: string

    The relative path to the main entry point of this service (relative to lib), e.g. "index.js".

  • Optional name?: string

    The name of the Foxx service. This will be shown in the web interface.

  • Optional provides?: Record<string, string>

    The dependencies this provides, i.e. which APIs it claims to be compatible with.

  • Optional scripts?: Record<string, string>

    An object defining named scripts provided by this service, which can either be used directly or as queued jobs by other services.

  • Optional tests?: string | string[]

    A path/pattern or list of paths/patterns of JavaScript tests provided for this service.

  • Optional thumbnail?: string

    The filename of a thumbnail that will be used alongside the service in the web interface. This should be a JPEG or PNG image that looks good at sizes 50x50 and 160x160.

  • Optional version?: string

    The version number of the Foxx service. The version number must follow the semantic versioning format. This will be shown in the web interface.