We launched SSX to provide developers with the easiest way to integrate Sign-In with Ethereum, enable DAO logins, resolve ENS names, and more. We are continuously working on a positive developer experience, and additional features to enable builders to work with emerging decentralized identity paradigms.
Our most recent work on SSX focused on two areas: adding optimizations, and adding additional features and support for various dapp setups. We recently took some time to consolidate and optimize code to reduce existing technical debt through some refactoring and added plenty of additional tests to make adding new features to SSX a breeze.
In our efforts to support various existing authentication setups, we've released support for NextAuth via our
ssx-react package. Additionally, we've added an example in our growing example library to show how to integrate it. To support wagmi's recent updates beyond version 0.7.15 and NextAuth in a variety of different development environments, we are updating our
Additionally, we added support for custom paths for endpoints on both the client and server sides to support various application setups in our core libraries. We also updated the
ssx-react API to allow for additional options to pass to the SSX instance, widening the number of supported providers (such as Blocknative’s web3-onboard provider!).
Speaking of providers, SSX now also has multiple examples showing a developer how they can build an SSX-enabled dapp with WalletConnect’s web3modal-v2!
Finally, we’re happy to announce support for Lens profile resolution. This enables any developer using SSX to easily pull in Lens profile information to the dapps they’re building by simply turning on a feature flag.
For more information on our recent updates, check out the following:
ssx-reactnow supports NextAuth, and we’ve added corresponding documentation (#49).
- We added support for resolving Lens profiles (#50).
- We updated the
ssx-reactAPI to use additional providers. We added this support alongside an example using Blocknative’s web3onboard (#34).
- We added flexibility in SSX to let developers configure what endpoints they want to use for issuing nonces, and handling login/logout functions (#36).
- We added examples of how to use SSX with web3modal-v2. We have one example for each web3modal v2 package: web3modal/html, web3modal/react, and web3modal/standalone.
- We also updated our
ssx-test-dappto also support testing this new integration (#58).
Testing and Code Refactor:
- We are over 70% in code coverage with tests and are currently working on continuing to get to full coverage this month.
- We optimized try/catch blocks, cleaned up existing code, and created a new package for functions and utilities used across our other packages
- We updated how we bundle our packages to prevent typescript build issues for builds using gulp (#52).
The team is working on improving interfaces in SSX to enable any developer to use it as a core building block, and extend it toward various decentralized identity use cases.
Additionally, we’re working on how developers with existing email or OAuth flows can easily enable Sign-In with Ethereum in their existing applications using SSX. We hope to eventually migrate applications to a world where Sign-In with Ethereum is the default way of logging in.
Finally, we think of SSX as a core enabler of user-controlled identity, where anyone can bring their own data anywhere they wish. We are working on a service that enables users to obtain credentials that they can take with them across the web using SSX. Stay tuned for more information late next month, closer to ETHDenver!