Filecoin
June 2025 to March 2026•Contract•San Francisco, USA
After the Filecoin Foundation contract, I moved on to Filecoin's own flagship site, filecoin.io. The scope also got bigger. Rebuilding one site wasn't the whole job anymore: we wanted to build something other Filecoin teams could reuse, so each of them wouldn't have to rebuild their UI from scratch.
We rebuilt filecoin.i as a new app inside the same Turborepomonorepo that already hosted fil.org. It shares configuration, utilities and components with the other Foundation sites, and it's open source. We migrated the some of the content from the old site and configuted TinaCMS, so the team can publish without going through code.
Alongside the site, we published @filecoin-foundation/ui-filecoin on npm. It's a Filecoin-branded UI library extracted from the site work, for the rest of the ecosystem to build on. Other teams picked it up quickly. It let me contribute to two new Filecoin products, filecoin.cloud and pay.filecoin.cloud, which were built directly on the package instead of starting their own design system.
That shift from site to library came with its own challenges. Turning site-specific components into a shared library changes the design problem. Each component no longer serves one site; it has to hold up across teams and use cases I couldn't fully predict upfront. The hard part was keeping the API flexible enough for reuse without making it so abstract that it slowed adoption down, and that took real iteration. Publishing to npm also brought its own discipline: versioning, build output, and not breaking downstream apps with every change.
Today, filecoin.io is live on the new codebase. The UI library it produced is already used beyond the site it came from, on Filecoin Cloud and Filecoin Pay.
Stack
The technologies I worked with
- Turborepo/ Build System
- TypeScript/ Programming Language
- Next.js/ Web Framework
- Tailwind CSS/ CSS Framework
- Headless UI/ Component Library
- TinaCMS/ CMS
- SWR/ Async State Management
- React Hook Form/ Form Management
- Zod/ Validation Library
- Wagmi/ Blockchain SDK
- Viem/ Blockchain SDK
Team
The fantastic people I worked with
- Mirha Masala/ Eng Management
- Filipa Ribeiro/ Product Design
- Barbara Peric/ Frontend
- Gary Moran/ Branding