Features

What the platform does today, and what is still on the roadmap. Items marked planned are not implemented yet.

Platform

What Loom and Cortex do out of the box. Items marked (planned) are on the roadmap; everything else is implemented.

Developer Centric

The whole architecture of Loom has a developer centric design which makes it easy to adapt it to your needs.

Read the docs

REST API

The Loom server provides a powerful REST API which can be used to manage all resources, including a Java client and a generated OpenAPI specification.

Read the docs

Chat & AI Agent

A built-in conversational assistant backed by a server-side agentic loop. It answers questions about your assets in natural language, with per-chat Skills, a persistent Memory bank, publishable Sessions and an optional isolated coding sandbox.

Read the docs

GraphQL

In addition to REST the server also provides a GraphQL API which allows you to fetch nested data in one step.

Read the docs

ACL

Loom comes with a powerful permission system. Permissions can be granted on an object level via users, groups and roles.

Read the docs

SSO

SSO IAM providers such as RedHat Keycloak, Auth0 and Okta are natively supported. No need for complicated plugins.

Read the docs

Asset Store

Existing assets can be referenced from disk. Alternatively files can be uploaded and stored locally (S3 backend planned).

Read the docs

Media fingerprinting

A perceptual media fingerprint can be generated for video content. These fingerprints can be used for asset blacklisting and similarity search using nearest neighbor search.

Read the docs

Image manipulation

planned

Images can be resized and cropped. The focalpoint can be set on images in order to help generation of cropped images for responsive designs.

Video thumbnail generation

Contact-sheet thumbnails are automatically generated from video content by the Cortex thumbnail node.

Read the docs

Search

Stored metadata can be indexed for full-text and vector search (Elasticsearch, Lucene and Qdrant integrations).

Read the docs

Tagging

Loom comes with a system which allows you to tag assets, collections and content.

Read the docs

Metadata

Beyond the structured models, Loom lets you attach custom metadata to any element it stores, together with user-generated content such as comments, reactions, ratings and annotations kept alongside your assets.

Read the docs

Import / Export

planned

Selective data can be exported and re-imported in another instance.

Metadata extraction

Metadata from images, videos and documents is automatically extracted by Cortex nodes (hashes, transcripts, captions, OCR, faces, scenes …) and made accessible via the API.

Read the docs

Operations & deployment

What it takes to run MetaLoom in your own environment.

PostgreSQL Storage

Metadata is stored in PostgreSQL through a code-generated jOOQ layer, with Flyway-managed schema migrations.

Read the docs

Monitoring

Monitoring data is exposed via a Prometheus scrape endpoint, so you can track instance status from a Grafana dashboard.

Read the docs

Cortex Processing Nodes

Media processing runs on a fleet of Cortex worker daemons that register with Loom and execute node tasks it dispatches. Scale out by adding workers, and pin heavy node kinds (face detection, speech-to-text) to dedicated or GPU hardware.

Read the docs

CLI

The metaloom command line client talks to the same REST API as the web interface — script admin tasks, manage assets and run pipelines. Ships as a native binary (no JVM needed) or a runnable JAR.

Read the docs

Kubernetes support / Helm Chart

Loom supports Kubernetes and ships a Helm Chart that helps you deploy it in your K8S cluster; Cortex workers deploy as scalable Deployments.

Read the docs

Extensions

Extensions can be registered in order to extend the functionality of Loom, and custom Cortex processing nodes can be authored in Java or Python.

Read the docs

S3

planned

Assets can be referenced from an existing S3 bucket or you can choose to use a bucket to store newly uploaded assets.

Every feature above is described in more depth in the documentation.

Open the docs See it in pictures