@@ -64,6 +64,36 @@ in progress.
6464LNURL-auth.
6565VSS is also integrated with [ LDK-node] v0.4.x as alpha support.
6666
67+ ### Development
68+
69+ * ** Build & Deploy** : Refer to language specific folder for instructions related to build and deploy of VSS.
70+ * ** Hosting** : VSS can either be self-hosted or deployed in the cloud. If a service provider is hosting VSS for multiple
71+ users, it must be configured with ** HTTPS** , ** Authentication/Authorization** , and ** rate-limiting** .
72+ * ** Authentication and Authorization** : Currently, the VSS-server
73+ supports [ JWT] ( https://datatracker.ietf.org/doc/html/rfc7519 ) -based authentication and authorization, and can run
74+ without authentication for local testing or in trusted setups. The VSS-rust-client supports LNURL-auth & JWT based
75+ authentication and authorization. Switching to simple HTTP header authentication is straightforward by adding another
76+ implementation. Note that the security of authentication heavily relies on using HTTPS for all requests.
77+ * ** Scaling** : VSS itself is stateless and can be horizontally scaled easily. VSS can be configured to point to a
78+ PostgreSQL cluster, and further scaling considerations need to be addressed in the PostgreSQL cluster.
79+ * ** Using with LDK-node** : [ LDK-node] can be easily configured to run with VSS as primary storage. It is integrated in
80+ LDK-node (written in Rust) using [ VSS-rust-client] , and there is also support for other languages such as Swift, Kotlin,
81+ and Python through [ UniFFI] bindings.
82+ ``` rust
83+ use ldk_node :: Builder ;
84+ fn main () {
85+ let mut node_builder = Builder :: new ();
86+ ...
87+ let node = node_builder . build_with_vss_store_and_fixed_headers (vss_endpoint , store_id , HashMap :: new ()). unwrap ();
88+ node . start (). unwrap ();
89+ ...
90+ ...
91+ }
92+ ```
93+ * * * Using with Other Applications ** : VSS is designed to store application - related metadata . Clients can use
94+ the [VSS - rust- client] directly for this purpose. This can help provide a complete user data recovery solution for
95+ applications, as well as enable turn- key multi- device support in the future.
96+
6797### Summary
6898
6999In summary, VSS is an open- source project that offers a server- side cloud storage solution for non- custodial Lightning
@@ -82,3 +112,7 @@ development of VSS, you can reach out to us in the [LDK Discord] in the `#vss` c
82112[LDK - node]: https: // github.com/lightningdevkit/ldk-node
83113
84114[LDK - Roadmap ]: https: // lightningdevkit.org/blog/ldk-roadmap/#vss
115+
116+ [LDK Discord ]: https: // discord.gg/5AcknnMfBw
117+
118+ [UniFFI ]: https: // mozilla.github.io/uniffi-rs/
0 commit comments