You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Aug 13, 2021. It is now read-only.
It should be possible to implement swarm nodes using other platforms. Enabling this can lead to wider adoption both in sense of community and platforms/devices.
It can also increase of quality of development of Swarm concepts in general, as they will be subject to more scrutiny and peer review, along with trial by actual reification.
Most importantly it is a preemptive step against possible cross-client incompatibility that may arise from a independent third-party implementer working on basis of best assumption.
Context
Currently no coherent and exhaustive source of truth exists for concepts and specifications of the swarm architecture, public nor private. This increases the possibility of misconceptions and faulty implementation, both on the part of third parties and the Swarm team alike.
Much of the required documentation is already written in one form or another, and needs only be adapted for the swarm node implementer role.
Issues
Collect and adapt existing documentation
Acceptance criteria
Each implementation step in prototype should be able to interface with the main go swarm implementation.
Proof
The text was updated successfully, but these errors were encountered:
Owner
Swarm: Louis Holbrook @nolash
Stakeholder point of contact
Status: Oskar Thorén @oskarth
Rationale
The best proof of good architecture is the ability to create multiple implmentations of it.
Dependencies
Written specs, stored in https://github.com/ethersphere/node-implementer-spec
[ ] - Swarm overlay address
[ ] - Bzz handshake protocol
[ ] - PSS addressing
[ ] - PSS protocol
[ ] - PSS message handling
[ ] - Kademlia concepts
[ ] - Hive (peer suggestion)
[ ] - Discovery protocol
[ ] - Forwarding
[ ] - Stream protocol
[ ] - Retrieval protocol (if not included in stream protocol)
Schematic overview:
(Please check link image might be cached: http://holbrook.no/tmp/specdep.svg)
Description
It should be possible to implement swarm nodes using other platforms. Enabling this can lead to wider adoption both in sense of community and platforms/devices.
It can also increase of quality of development of Swarm concepts in general, as they will be subject to more scrutiny and peer review, along with trial by actual reification.
Most importantly it is a preemptive step against possible cross-client incompatibility that may arise from a independent third-party implementer working on basis of best assumption.
Context
Currently no coherent and exhaustive source of truth exists for concepts and specifications of the swarm architecture, public nor private. This increases the possibility of misconceptions and faulty implementation, both on the part of third parties and the Swarm team alike.
Much of the required documentation is already written in one form or another, and needs only be adapted for the swarm node implementer role.
Issues
Collect and adapt existing documentation
Acceptance criteria
Each implementation step in prototype should be able to interface with the main go swarm implementation.
Proof
The text was updated successfully, but these errors were encountered: