avatar Hannah

Resonance

🚧 Currently a Proof of Concept (POC) - Work in Progress 🚧

Resonance is a full-stack social concert-tracking app that lets you check in to live shows, connect with friends, and relive your favorite music moments.

FrontendBackendLive Site
Resonance App Screenshot

Why I built this

I built Resonance because I've always loved logging and reflecting on the experiences that matter to me, from beer tastings and coffee spots to train journeys and scrobbling music. But when it came to concerts, I couldn't find an app that let me check in to live performances in a way that felt personal, social, and structured. Resonance fills that gap. It also served as the perfect opportunity to turn a personal idea into a real product as part of the final project for my Full Stack Developer course.

Tech Stack

I built Resonance using the following technologies:

Frontend

Next.jsTypeScriptTailwind CSSShadcn UINext-PWAVercel

Backend

LaravelPHPLaravel SanctumOpenAPI/SwaggerFilamentMariaDBSequel AceDigital Ocean

How it was built

Resonance was built as a full stack web application using Next.js for the frontend and Laravel for the backend. The frontend uses Tailwind CSS for styling and includes features like authentication, filtering, geolocation, and dynamic routing. The backend provides a fully documented REST API with Laravel Sanctum for secure token-based authentication and OpenAPI/Swagger for documentation. An admin dashboard was implemented using Filament to manage users, concerts, and content. The app is deployed on Vercel (frontend) and DigitalOcean (backend + database), with real-time data flow managed via API Route Handlers in Next.js, acting as a proxy to the Laravel backend.

Features

Resonance has a few features that make it unique:

Timing

Building Resonance wasn't just a technical challenge, it was a time-balanced marathon of design, development, and iteration. Here's how the 97 hours broke down:

What I learned

Through building Resonance, I gained hands-on experience with full stack development: from database design to frontend UX. I learned how to structure and document a scalable REST API using Laravel and OpenAPI, implement secure token-based authentication with Laravel Sanctum, and manage relationships through pivot tables with UUIDs for better integrity and security. On the frontend, I explored the App Router in Next.js, handled server/client interactions via API route handlers, and built dynamic interfaces with Tailwind CSS and ShadCN UI.

I also dove into advanced topics like geolocation, calculating distances with the Haversine formula, and caching responses for performance. Deploying the backend on DigitalOcean and the frontend on Vercel taught me the challenges of production environments, especially when dealing with cookies, cross-origin issues, and environment variables.

Most of all, I learned how important it is to think in iterations: deploying and testing features one at a time, debugging thoughtfully, and adapting the backend structure to meet frontend needs. This project sharpened both my technical and problem-solving skills and gave me confidence in building real-world applications from scratch.

Future Improvements

There are a few features I would like to add to Resonance in the future:

← Back to all web projects