Manyfold
Self-hosted digital asset manager for 3D print files
Alternative to: thingiverse, myminifactory, cults3d
v0.100.0
2025-02-12Two HUGE milestones this release; proper federation between Manyfold instances, AND it’s our 100th feature release! 🎂 🎉
First, let’s talk about federation. For a while we’ve had limited federation over ActivityPub; you could follow Manyfold creators from Fediverse platforms like Mastodon and see updates from them, like when they create a new model. But now, Manyfold instances (that enable federation) can connect together to natively share information. If you follow a Creator, Model, or Collection on another Manyfold instance, that thing will now appear in your instance’s listings, and you’ll see updates in the main page activity feed! For instance, here’s a Creator that’s on a different instance; you can see it has all the same data, and shows that it’s from a different server.
This really is the big step towards our goal of building a decentralised alternative to the hosting sites like Thingiverse; you can now host your own content, and link up easily to content that others are also self hosting. It’s all very exciting! There’s more to come, plenty more features add on, but this is a massive step forward.
Manyfold has been on quite the journey to this, the 100th feature release; it started just over 4 years ago, in January 2021, as a side project to help @Floppy organise his model folder. Since then it grew organically for a few years, but then in January 2024 got a huge boost when we got funding from NLNet and the EU NGI Zero project, enabling full-time work on it. That’s taken it from a side project to a proper tool, with thousands of weekly downloads, over 50 known instances running (and that’s just the ones reporting in!), translation into five languages, and an informal network of contributors who write code, translate text, provide peer support, and generally keep us going!
We couldn’t be more thankful to everyone who’s helped us get this far; we literally couldn’t have done it without all of you. From here, we’re just going to keep building, powered by a second grant just started from NLNet / NGI Zero, with a v1.0 release “soon”, and with lots of great new features in the pipeline!
Thank you all ❤️
What’s Changed
✨ New Features ✨
- Deliver creator updates to its followers by @Floppy in https://github.com/manyfold3d/manyfold/pull/3491
- Show requested but pending follows on button by @Floppy in https://github.com/manyfold3d/manyfold/pull/3501
- ActivityPub federation for Models and Collections by @Floppy in https://github.com/manyfold3d/manyfold/pull/3507
- Include model license in ActivityPub representation by @Floppy in https://github.com/manyfold3d/manyfold/pull/3508
- Follow remote models and collections by @Floppy in https://github.com/manyfold3d/manyfold/pull/3511
- Show user fedi address on settings page by @Floppy in https://github.com/manyfold3d/manyfold/pull/3516
- Show remote models and collections in lists by @Floppy in https://github.com/manyfold3d/manyfold/pull/3538
- Added a simple “following” page by @Floppy in https://github.com/manyfold3d/manyfold/pull/3542
- Automatically update and create remote federated objects by @Floppy in https://github.com/manyfold3d/manyfold/pull/3559
- Show server for remote objects in activity feed by @Floppy in https://github.com/manyfold3d/manyfold/pull/3564
🐛 Bug Fixes 🐛
- Only auto accept follows for local objects by @Floppy in https://github.com/manyfold3d/manyfold/pull/3500
- Fix collection page bug by @Floppy in https://github.com/manyfold3d/manyfold/pull/3514
- Various Collection page fixes by @Floppy in https://github.com/manyfold3d/manyfold/pull/3518
- Don’t check remote models for problems by @Floppy in https://github.com/manyfold3d/manyfold/pull/3565
- Overwrite links in remote object deserialization by @Floppy in https://github.com/manyfold3d/manyfold/pull/3566
- Only use S3 integrity protection when required by @Floppy in https://github.com/manyfold3d/manyfold/pull/3572
🛠️ Other Improvements 🛠️
- Refactor ActivityPub rendering code into presenters by @Floppy in https://github.com/manyfold3d/manyfold/pull/3497
- Rename ActivityPub presenters to serializers by @Floppy in https://github.com/manyfold3d/manyfold/pull/3498
- Move user serialization into its own class by @Floppy in https://github.com/manyfold3d/manyfold/pull/3499
- Add serializers for Model and Collection, to be used in future by @Floppy in https://github.com/manyfold3d/manyfold/pull/3502
- Refactor AP->Creator conversion into a deserializer object by @Floppy in https://github.com/manyfold3d/manyfold/pull/3503
- Add tests for de/serializers by @Floppy in https://github.com/manyfold3d/manyfold/pull/3509
- Test and parse model tags in activitypub by @Floppy in https://github.com/manyfold3d/manyfold/pull/3510
- Change collections to federate as a Group actor by @Floppy in https://github.com/manyfold3d/manyfold/pull/3515
- Add flag for notes generated for compatibility purposes by @Floppy in https://github.com/manyfold3d/manyfold/pull/3517
- Roll back AWS SDK by @Floppy in https://github.com/manyfold3d/manyfold/pull/3524
- Don’t show permission options for remote objects by @Floppy in https://github.com/manyfold3d/manyfold/pull/3541
- Link names to profiles on actor table by @Floppy in https://github.com/manyfold3d/manyfold/pull/3547
- Create remote objects only when follow is accepted by @Floppy in https://github.com/manyfold3d/manyfold/pull/3543
- Set a valid user-agent string by @Floppy in https://github.com/manyfold3d/manyfold/pull/3557
- Add note that remote previews aren’t available yet by @Floppy in https://github.com/manyfold3d/manyfold/pull/3567
Full Changelog: https://github.com/manyfold3d/manyfold/compare/v0.99.1…v0.100.0