Day0 - Let there be Loom

blog-image
Credit: Jotschi

What is Loom?

Loom is a headless media asset management server platform. It provides tools to inventory your media assets and extract the most information from them. The Loom Sever can be used to query the data in a structured way with either REST or GraphQL. Additional metadata can be stored in Loom alongside to your assets.

What is MetaLoom?

MetaLoom is the umbrella which provides a home for all Loom related side projects and components.

Why developing Loom?

From 2006 till 2021 I helped design and develop Gentics Mesh which is an open source headless CMS. It is a great tool but has some very serious design flaws. With Loom I plan to take the "good parts" of Mesh and give them a new home.

Additionally I have already experimented on some media asset processing a while back and would like to share these tools / processes in a consistent manner. Creating a dedicated server which provides a home for this seems a good solution.

While working on Mesh I really liked the idea to put all my skills to use on a single project. With Loom I plan to continue this.

When can we use it?

Once it is ready™

Will it be open source?

Yes - Apache 2 License

How can I learn more about the development process?

I plan to cover the development process in a series of blogpost.

  • Design - Day1

  • Project Setup - Day2

  • Vert.x Dagger PoC - Day3

Further topics will cover Database implementation, REST API setup, Media processing.

I know/like/use Mesh - What will be the differences?

So far:

  • No branches

  • Limited versioning

  • No tag families

  • No binary fields

  • No plugins

  • No dedicated schema migration

  • No OrientDB

New:

  • S3 support

  • Native SSO support (Keycloak, Auth0)

  • Asset System

  • Media Fingerprinting

  • Overhauled permission system

What stack do you plan to use?

  • Vert.x - For the core

  • Dagger - For the glue

  • RxJava - For the reactiveness

  • Vertx-Jooq - For persistence

  • Elasticsearch - You Know, for Search!

  • OpenCV - Media processing

  • Tika - Metadata extraction

  • TwelveMonkeys - Image decoding/encoding

Do you plan to add feature XYZ?

Perhaps! Drop me a mail ideas@metaloom.io