Inspiration
I’ve been building WASM libraries for a few projects for a while, due to their powerful features and flexibility with the web ecosystem. However, one issue with web binaries is that once they are released, they can’t be monetized due to the clear “copy and paste” issue digital content has.
For a while I’ve been trying to solve this issue in a decentralized / web3 way to be able to capitalize on this work without having to go through the hurdles of setting up a company.
What it does
dLicense is two things: a Golang library that works as a wrapper for any Go library, which queries a Kwil database to verify software licenses. It is also a website (https://dlicense.xyz) that allows the uploading and purchasing of these pre-wrapped and WASM-targeted compiled apps.
How we built it
Behind the scenes I’ve used Bundlr for file management, and Kwil for state management. We also relied on a few API endpoints to do some heavy work to simplify workflow and a Moralis webhook to notify when payments to a given address is sent. For setting these payments structure and licensing fees we used the newest Arweave UDL.
Challenges we ran into
Ideally we would had liked that users (either developers or buyers) would had paid for everything and connect everything from the client. This ended up being more challenging than I thought a had to move some of these tasks to a server with a private key to “sponsor” these calls.
At the same time our interaction with the Kwil databases was a bit more time consuming than we thought due to having to learn their concepts from scratch. I had a similar issue with Arweave and gateways.
Accomplishments that we're proud of
The ability to consume a Kwil database from a WASM-compiled binary despite not having even a Go client is something I’m proud of. I’ve also managed to tweak my server to handle large files, which isn’t always easy. And in general doing everything from scratch in a few days (the Go library wrapper, the Kwil Go client, the backend API and the web app front end for two roles) was something I’m proud of.
What we learned
The Arweave ecosystem is quite powerful and not only “an IPFS alternative”. I’ve actually see many potential future cases now that I understand and know a bit about the tech, and want to continue building solutions on top of the ecosystem.
What's next for dLicense
Ideally I want to launch it as a fully decentralized application. I want to remove all non-client components to ensure clients are able to execute everything from a browser. It wouldn’t be the worst to place a token and some governance layer to make it fully autonomous with some DAO to control most of the pieces.
Built With
- arweave
- bundlr
- chakra-ui
- kwil
- moralis
- nextjs
- typescript
- udl

Log in or sign up for Devpost to join the conversation.