It's not SoLiD, but it's FIRM.
This is an experimental ActivityPub-enabled federated information resource manager. This library can be used to implement ActivityPub, Linked Data, and similar servers. It's currently not intended to be the basis for a public servers, but rather a platform for experimentation and implementing proof-of-concept for social web ideas.
This library is being used to implement the firm-server, which added network access, simple web interfaces and other features. The firm-server is just an example, other servers can be build with this library. Those servers can use a different web framework, different storage strategies, and os on.
This library is still in the early stages of development, but there are already some potentially useful and interesting features:
These are current features, unless tagged otherwise.
- Python 3 implementation (libraries for other languages being developed)
- Minimal external dependencies (only cryptography libraries for HTTP signatures)
- Multi-actor
- Multitenant
- Multiple domains supported on a single server
- Data vocabulary-independent
- Not specific to ActivityStreams 2.0
- Flexible URIs (supports any HTTP URI path structure)
- Abstract web interface
- Abstract resource store
- Multiple authentication techniques
- HTTP Signatures (Cavage)
- HTTP Basic Auth
- Bearer Tokens
- Can be used simultaneously (chained)
- #future OAuth2
- #future FEP-specified schemes, new RFC 9421 HTTP Signatures, etc.
- Partial ActivityPub S2S implementation
- Implements activitypub-mincore and more.
- Interoperates with Mastodon Follow, Undo and Create activities.
- Partial ActivityPub C2S implementation
- Extensible WebFinger (Resource-specific properties)
- Interoperates with Mastodon
- Extensible NodeInfo (Tenant-specific Metadata)
This is very subject to change.
- Version 0.1.1
- Integration testing with activitypub-testsuite (and/or feditest)
- Version 0.2.0
- RDF Graph Storage (mostly implemented already)
- SPARQL endpoint (already implemented)
- Full-Text Search on RDF data (implemented already)
- Version 0.3.0
- JSON Schema Validation (fediverse-json-schema)
- ActivityPub Media Upload
- ActivityPub C2S Proxy Endpoint
- Version 0.4.0
- SoLiD-lite support
- Document management
- Long Term
- Event streaming
- ActivityPub C2S Extensions
- Mastodon-compatible UI API
- Additional storage implementations (see above)
- FEP prototyping and proof-of-concept demonstrations
- Domain-specific server implementations