The challenge
Independent artists get little room on the big platforms. Undersound is a social network for underground music where anyone can publish their work and build an audience.
The solution
A full web application built with Next.js 16, Supabase and Stripe:
- User accounts with sign-up, login and artist profiles.
- Song and album uploads, with an audio player that keeps playing while you browse.
- Feed and explore pages with search and genre filters.
- Social features: follow artists, like, comment and get notifications.
- Monetization: Stripe payments to promote a song (boost), a Pro plan and webhooks that confirm every payment.
- Moderation: users can report inappropriate content.
What I learned
How to design a relational database with row-level security, handle real payments safely with webhooks and build a continuous playback experience in a React app.