
Portal
The most fun social trading platform on Base.
About
The problem it solves On-chain content like tokens and NFTs has been scattered across social and trading platforms, with neither fully integrating the other. Social platforms lack built-in trading, and trading platforms lack social engagement. New on-chain media like Warpcast and Zora bring us a step closer, but either optimises for generality making deeply embedded, custom experiences impossible or for the content itself neglecting more advanced trading features. **Portal fills this gap with a feed-based social trading platform that optimizes for trading and social interactions around it**. It’s built for traders, degens, meme lovers and anyone who just wants to trade with friends. Unlike most social platforms that are mobile-first, Portal is **desktop-first**, allowing users to trade, chat, and browse content in real time—all in a single, immersive interface. Here, token and NFT creation, as well as trading, is directly embedded into posts and messages. By tying launches to identity and community, Portal encourages transparency and long-term engagement, fighting the common problem of anonymous pump-and-dump schemes seen on launchpads. Portal is built around **peer-to-peer on-chain subscription payments**. Users can set up tiers offering both off- and on-chain perks to their subscribers - like viewing locked content, group chat access, discounts and access to new coins before the public. These perks are fully enforced by Portal’s smart contracts, giving subscribers guaranteed access. For example, if a creator launches a token, their subscribers can buy in before the public — blocking bots and other exploiters from sniping the launch. Social gamification is embraced through progressive achievement titles, trading streaks, and most notable, a chess-inspired **ELO rating system**. Here, ELO is a point measurement of relative trading performance. It is volume-agnostic, so someone trading with a single dollar can compete and climb the leaderboard on the same terms as someone trading with a lot more.
How it's made
Challenges we ran into Implementing the p2p on-chain subscription tier system was a challenge. Portal uses Ethereum Execution Service (EES) for automation - a protocol I had already developed and was familiar with. But adapting it from general-purpose automation to a payment system that lets any contract verify subscriptions and grant perks required invention and some creative hacking. Another challenge was implementing the custom bonding curve. Beyond the math needing to be exactly right, I had to ensure a smooth migration to a Uniswap V4 pool while preserving the same price. On V4, I built a fee hook, and the tricky part was ensuring fees were only accumulated in ETH—not the other token—while supporting exact-in and exact-out swaps in both directions. Some technical limitations and accounting edge cases made it tough, but I got through it. One challenge was syncing smart wallets with users in my database. For example, when a user sends ETH in a chat, I need to verify that the transaction came from the correct user. But with ERC-4337 smart wallets, transactions are wrapped in UserOperations, so I can’t rely on the msg.sender like with EOAs. Instead, I had to track and verify custom events - not the cleanest solution, but it works. Using Privy for Supabase authentication was also tricky, but I solved it chaining JWT tokens to links users in Privy to users in my DB. I also wanted it to be easy to boot up a user's social graph. I managed to do that so users can synchronize their Farcaster following using Neynar. With so many custom smart contracts, it was hard to judge if everything was ready for mainnet. I focused on increasing test coverage but chose not to rush the launch. Instead, I just started giving users access on Base Sepolia to gather feedback and continue testing. In parallel, I’ll work on sourcing funds—first for an open competitive audit, then a full audit. The goal is to make Portal the go-to social trading platform in web3, and I’ll keep iterating with users until we get there.