Freeport
Ushering in a new form of art and asset ownership with Decentralized Finance and NFTs
Problem
Ownership of fine art is not accessible to most people. Freeport aims to democratize art ownership and let users use their shares as liquidity for DeFi, opening up ownership to more people while leaning on blockchains for user security and autonomy.
Architecture
Given the project’s aim of giving art and asset ownership, the SEC and regulations played a huge role in how the app could function along with the partners needed to meet compliance. The frontend focus was on creating a personal and engaging experience that let users view their assets and use DeFi utility to take out liquidity or view assets in a 3D gallery. The backend was a Node.js API handling authentication with SIWE (Sign in with Ethereum) and connecting with external providers to place buy and sell orders on assets.
Development
When joining this project it was at an early stage with only a blog page built. The first focus was building authentication. Being a web3 app we used email login and SIWE so users could authenticate via email without a password alongside a crypto wallet. Focus then shifted toward notifications, a profile page, and the art gallery, which were complete features starting from the database schema using Prisma and GraphQL. In addition, I created smart contracts to enable the liquidity pool feature offered by the app, letting users access asset liquidity for DeFi protocols.
Learnings
Being a contract role, I was able to learn a ton in a short period of time. Developing and deploying contracts to a testnet was great experience in Solidity development and gave me confidence to keep building contracts. Working on a very early project also gave me a vantage point on how development looks at that stage. Having full autonomy for certain functionality showed where I can improve as a developer and iterate faster.