Spruce Developer Update #25
At Spruce, we’re letting users control their identity and data across the web. Here’s the latest from our development efforts.
In case you missed it, check out our previous update here:
At Spruce, we’re letting users control their identity and data across the web. Here’s the latest from our development efforts:
Sign-In with Ethereum
Sign-In with Ethereum is a new form of authentication that enables users to control their digital identity with their Ethereum account and ENS profile instead of relying on a traditional intermediary.
- The latest Sign-In with Ethereum community call took place earlier this week - you can listen to the recording here:
- We've released
v.2.1.3-beta
of our TypeScript library that incorporates a number of library improvements, additional tests, safeguards, and more:
- As mentioned in a previous update, most of our efforts are currently focused on a product that will make working with Sign-In with Ethereum even easier for developers. Additionally, this initiative will also include enhancements to existing applications and additional information on user interactions. Interested in testing this out early? Get in touch!
- As mentioned in a previous update, we're specifying ReCaps which provides concise wallet-signable messages with capability delegations. If approved, this will be EIP-5573, and an extension specification to Sign-In with Ethereum. For more information on ReCaps, check out this post:
- We've updated and added fixes to our NextAuth example that incorporates Sign-In with Ethereum (siwe-next-auth-example #14)
Kepler
Kepler is a decentralized storage network organized around data overlays called Orbits. Kepler allows users to Securely share their digital credentials, private files, and sensitive media to blockchain accounts, all using your Web3 wallet.
- Kepler is undergoing architectural changes, doubling down on rust IPLD from the rust IPFS project, thereby improving performance by removing the block size restrictions. This will further improve maintainability and agility to select network protocols, which we hope to contribute back to the rust IPFS ecosystem soon.
SpruceID
SpruceID is a decentralized identity toolkit that provides everything you need for signing, sharing, and verifying trusted information. Documentation for our core identity tooling can be found here:
SSI/DIDKit
- Added support for did-jwk (#466).
- Added support for VP holder bindings (#450).
- Updated cryptographic libraries, allowing for better definition of hashes length (#385).
- Fixed the default verification method selection (#475).
- Refactored features across crates and improved CI coverage of features (#479).
Rebase
- Merged support for Solana wallets, as well as linking accounts together for both Ethereum and Solana wallets respectively (#32).
- We are concluding our work on a workflow that involves linking an email address to a public key (#34).
TreeLDR
- Upgraded the
json-ld
andrdf-types
dependency libraries to the latest versions,0.9.0-beta
and0.12.2
respectively (#39, #36, #33). This will allow TreeLDR to compile with stable Rust 1.65. - Added support for literal identifiers (#46) - this is particularly useful when exporting TreeLDR to JSON-LD contexts to specify a type field to be exported to the JSON-LD `@type` keyword:
- Added support for the combination of
multiple
andrequired
property/field attributes (#47), When specifying both attributes,required
was ignored before. - Fixed a bug where the field name in a type definition was ignored in the associated implicit layout definition (#48).
- Added new tests to the parser and JSON-LD context generator (#44).
Spruce lets users control their data across the web. Spruce provides an ecosystem of open-source tools for developers that let users collect their data in one place they control, and show their cards however they want.
If you're curious about integrating Spruce's technology into your project, come chat with us in our Discord: