AnimusDB

AGPL-3.0, and what it means for you.

For anyone evaluating a database, the licence is the first objection raised in the meeting — whether it reaches your application code, and whether a commercial option exists. Silence on that reads as a trap, so here is the whole answer on one page.

This page is an explanation, not legal advice

The licence text is the authority, and your counsel is the person whose reading of it governs your company. What follows is how we understand it and how we intend it to be used.

Three sentences, then the detail.

Not affected

Your application talks to AnimusDB over the DynamoDB HTTP API using AWS's own SDKs. It links nothing of ours. Using a database over a network protocol does not put your application under that database's licence.

Nothing to publish

Run a stock build of AnimusDB for your own product, however commercial, and you owe no one any source. The obligations begin when you modify it or when you pass copies on.

Source to its users

Modify AnimusDB and let people interact with your modified version over a network, and you must offer those people the modified source. That is section 13, and it is the clause that makes this AGPL rather than GPL.

What you owe, in the situations that actually come up.

What you're doingWhat the licence asks of you
Running an unmodified build as the database behind your SaaS productNothing. Your application is a separate work that speaks to AnimusDB over a documented network protocol. You are not conveying AnimusDB and you have not modified it.
Carrying local patches, used only by services and staff inside your companySection 13 asks that users interacting with the modified version over a network be offered its source. Those users are your own people, so in practice this is an internal repository link — but it is a real obligation, not a formality.
Shipping AnimusDB inside an on-premises product your customers installYou are conveying the software. The ordinary GPL obligations apply: your customers get the corresponding source of AnimusDB, including your changes to it, under the same licence.
Offering AnimusDB itself to third parties as a hosted service, with modificationsSection 13 applies squarely. Your users are interacting with your modified version over a network, and they must be offered its source. This is the case the AGPL was written for.
Storing your customers' data in itNothing. A software licence governs software. Your data, your schema and your access patterns are yours and are not derivative of anything.

"Does section 13 reach our application?"

Section 13 obliges you to offer source to users interacting with the modified Program over a network. The question is who counts as such a user when your application sits in between.

The widely held reading, and the one this project intends, is that the user in question is whoever talks to AnimusDB — over its DynamoDB endpoint, its admin API or its consoles. Someone using your web application, which happens to query a database several layers below, is a user of your application. They are not interacting with AnimusDB.

Two facts make that reading easier to defend here than it is for some AGPL projects. AnimusDB ships no client library that you link into your application — you use AWS's SDKs, which are Apache-2.0 and are not ours. And the interface between you and it is a published wire protocol that predates this project.

None of which is a substitute for your own counsel reading the clause. It is, however, the specific paragraph to put in front of them, which usually saves a week.

The licence makes the same argument the project does.

AnimusDB exists because a database you cannot move is a dependency you cannot renegotiate. A permissive licence would leave open the one outcome that argument is against: a well-funded operator taking a hosted fork closed, and the version everybody uses ceasing to be the version anybody can run.

The AGPL closes that door and leaves every other one open. You can run it, modify it, embed it, build a business on it and never publish a line — right up until you start handing a modified version to other people, at which point they get what you got.

Where a commercial licence stands today.

Some organisations forbid AGPL software by policy, whatever the analysis above says. It is worth being direct about the current position rather than implying more than exists.

There is no commercial licence on offer today. AnimusDB is AGPL-3.0-only, and that is the only way to obtain it.

What does exist is the machinery that would make one possible. Contributions require a DCO sign-off and a contributor licence agreement — the reasoning is written up in the design records, ADR 0007. Keeping the rights consolidated means a differently-licensed edition remains a decision the project can make, rather than one it has already foreclosed.

If an AGPL policy is what stops you evaluating, say so in an issue. Knowing how many people are actually blocked, and on what grounds, is how that decision eventually gets made.