What an open source STL library license means
AGPL and Apache 2.0, what each obliges when you self-host a 3D model library, plus the two things open source does not guarantee regardless of license.
The self-hosted 3D print libraries people usually shortlist are all open source, so the license rarely decides which one you install. It decides something narrower: what you owe if you modify the software, and what you can do with it commercially. For a home library the answer is almost always “nothing” and “whatever you like”, which is worth saying plainly before anyone reads an AGPL summary and gets nervous.
Where the license genuinely matters is further out, when the project stalls, when you want to embed it in something you sell, or when you are trying to work out how much of your setup you actually control.
What the shortlist is licensed under
PrintStash and Manyfold are both AGPL-3.0, free to self-host with no paid tier, seat count, or storage cap. STL Shelf is Apache 2.0 for the self-hosted code, alongside a commercial hosted service whose plans run from a free 0.5 GB tier to $35.99 per month. The three-way feature comparison covers what each one actually does; this page is only about the license column.
Apache 2.0 is the more permissive of the two. It lets you modify the code and ship the result inside a proprietary product without publishing your changes. AGPL does not, and that difference is the whole practical distinction between them.
What the AGPL network clause means in practice
AGPL-3.0 is GPL-3.0 plus one addition: if you modify the software and let other people use it over a network, you have to offer them the modified source. That clause exists because ordinary GPL only triggers on distribution, and running a modified program as a web service is not distribution.
Three conditions have to hold together before it obliges you to do anything. You have to modify the source, run the modified version, and let other people reach it over a network. Running an unmodified image for yourself, your household, or your makerspace triggers none of it. Neither does modifying it and keeping the result to yourself. The clause is aimed at companies running altered copies as a service, and a hobbyist installation is not what it was written for.
If you do intend to sell hosting on top of an AGPL library, read the license text rather than a summary, including this one.
What open source does not guarantee
Two things, and both are the ones people are actually relying on when they say the license makes their library safe.
It does not guarantee maintenance. A permissive license on an abandoned project gives you the right to fix it yourself and nothing else, and “I could fork it” is a real option only if you can read the stack. Release cadence and how many people are behind a project tell you more about whether it will still work in three years than the license does. Criterion nine in what to look for in a self-hosted 3D file manager is about exactly this.
It does not guarantee an exit. Open source means you can read the database schema; it does not mean the project ships an export that reproduces your metadata, taxonomy, and history somewhere else. Those are separate features that a maintainer has to build. PrintStash exports models, files, metadata, taxonomy, print history, favorites, and saved views into a versioned archive, and its full backup covers the database, owned blobs, documents, thumbnails, and a manifest. It deliberately does not copy source bytes indexed from a shared volume, because those are still your files on your NAS and still need their own backup. Check the equivalent path on whatever you choose, and check it before you have entered three thousand tags.
Where the license does change your decision
If you are building something commercial on top of a library, the difference is real and Apache 2.0 is the easier path. If you are running a makerspace or a small farm on an unmodified image, the licenses are functionally identical and you should choose on features instead.
The one case where AGPL is actively the thing you want is when you care that a project cannot be quietly closed. A maintainer can relicense future versions, but the AGPL code already published stays published, and anyone can continue from it. That is a weaker guarantee than it sounds, since continuing requires someone willing to do the work, but it is not nothing.
Questions that come up
Does the AGPL affect me if I run a library for my makerspace?
Not unless you have modified the source. Running a published image, even for twenty members over the local network, is plain use and carries no obligation to publish anything. The clause activates when you modify the code and then let people reach your modified version over a network, at which point those users can ask you for the changed source. If you patch something and want to stay clear of the question entirely, the simplest route is to send the patch upstream, which makes it the maintainer’s published code rather than your private fork.
What is the practical difference between AGPL and Apache 2.0 here?
Whether you can keep your modifications private while letting others use them over a network. Apache 2.0 lets you fork a library, change it, and offer the result as part of a closed commercial product without publishing anything. AGPL requires you to offer the modified source to the users of that network service. For self-hosting an unmodified copy at home, the two licenses give you identical rights and neither asks anything of you. The difference only becomes concrete when a business is involved.
Does open source guarantee I can get my data out?
No, and the two get conflated constantly. The license governs the code, not your data, and a project can be fully open source while shipping no export at all. What open source does give you is the fallback: the schema is readable, so someone competent can extract the data by hand if the tool never grows an export. That is a much worse experience than a working export button, so treat the export as a feature to test rather than something the license implies. Run it before you commit a real library, and restore it somewhere else, because a backup nobody has restored is a hypothesis.
If a project is abandoned, does the license help me?
It helps only if someone picks it up. An open license means the code stays available and a fork is legally straightforward, which is genuinely more than a proprietary tool offers when its vendor disappears. What it cannot supply is the person who understands the codebase well enough to keep it running against new Docker, Python, or database versions. Judge project health on the release history and how the maintainer handles migrations, and treat the license as insurance rather than as a plan.
Sources
- GNU AGPL-3.0 for the license text and the network clause.
- The PrintStash repository for its AGPL-3.0 license, and capabilities for the export and backup scope described above.
- License and pricing details for Manyfold and STL Shelf are carried in the three-way comparison, checked August 2026.
For the wider ownership argument rather than the legal one, why self-host a 3D printing library covers the maintenance tradeoff, and how to organize an STL library starts from the method instead of the tool.