🌟 Inspiration
The inspiration for Forever Together came from witnessing close friends struggle through their wedding planning journey. Despite living in the digital age, they were juggling multiple spreadsheets, paper lists, sticky notes, and various apps that didn't talk to each other. The stress of coordinating hundreds of details while trying to stay within budget was overwhelming, and communication between partners often broke down.
We realized that wedding planning isn't just about managing data - it's about creating a shared experience for two people embarking on their life together. Existing tools were either too complex (designed for professional planners) or too simple (just glorified to-do lists). None captured the romance and excitement that should accompany this special time.
We wanted to build something different: a platform that's powerful enough to handle every aspect of wedding planning, beautiful enough to make the process enjoyable, and collaborative enough to keep both partners engaged and aligned. The vision was to transform wedding planning from a source of stress into a journey of joy.
💍 What it does
Forever Together is a comprehensive, AI-enhanced wedding planning platform that centralizes every aspect of wedding coordination into one elegant, collaborative interface.
Core Features:
1. Collaborative Dashboard
- Real-time countdown with animated flip clock showing days, hours, minutes, and seconds
- At-a-glance statistics displaying guest count, budget status, vendor bookings, and completion progress
- Activity feed showing both partners' recent actions for transparency
- Upcoming events timeline with smart date calculations
- Quick action shortcuts to all major features
2. Smart Budget Tracker ⭐ (Star Feature)
- Category-based budget allocation across 10+ wedding expense categories
- Real-time expense tracking with detailed notes and partner attribution
- Visual doughnut charts showing spending distribution at a glance
- Intelligent over-budget alerts with color-coded warnings (red for exceeded, yellow for approaching)
- Automatic calculation of remaining budget per category
- Total budget vs. spent comparison with progress indicators
3. Guest List Management
- Comprehensive guest database with full contact information
- RSVP status tracking (Pending, Confirmed, Declined) with visual progress bar
- Meal preference recording (Vegetarian, Non-Vegetarian, Vegan, Other)
- Plus-one guest support for accurate headcount
- Table assignment system for seating arrangements
- Bulk operations and filtering capabilities
- Real-time confirmation rate calculations
4. Vendor Hub
- Centralized vendor directory organized by categories (Photographer, Caterer, Florist, etc.)
- 5-star rating system for vendor evaluation and comparison
- Complete contact details including phone, email, and address
- Pricing information and notes for each vendor
- Booking status tracking (Contacted, Booked, Confirmed, Cancelled)
- Filter and search functionality for quick access
- Visual status badges for instant recognition
5. Task Checklist
- Comprehensive wedding planning checklist with 50+ common tasks
- Priority levels (High, Medium, Low) with color coding
- Due date tracking with visual indicators for urgency
- Partner assignment for clear accountability
- Drag-and-drop interface between Pending and Done columns
- Automatic progress calculation showing completion percentage
- Overdue task highlighting
6. Timeline & Events
- Dual timeline system separating wedding day schedule from planning milestones
- Wedding day events (ceremony, cocktail hour, reception, etc.) with precise timing
- Planning milestones (venue booking, invitation sending, dress fitting, etc.)
- Location tracking for each event
- Checkable items for completion tracking
- Visual timeline with scroll-triggered animations
- Time-based organization for easy reference
7. Mood Board
- Visual inspiration collection for design ideas
- Image upload with drag-and-drop support
- Category tagging (Decor, Flowers, Dress, Venue, Cake, etc.)
- Color palette recording for each inspiration
- Pinterest-style responsive grid layout
- Quick reference tool for vendors and decorators
- Shareable with wedding party and vendors
8. Settings & Profile Management
- Couple information (names, contact details)
- Wedding date and venue configuration
- Total budget setting with real-time propagation
- Partner role switching (Bride/Groom view)
- Secure authentication and session management
- Data export capabilities
Technical Highlights:
Advanced 3D Animations
- 2,000-particle 3D field creating a romantic atmosphere in the hero section
- Floating golden heart spheres with physics-based movement
- Smooth page transitions and scroll animations
- Card hover effects with depth and shadow
- Button press feedback with tactile response
- Loading skeleton screens showing content structure
Accessibility Features
- Automatic detection of
prefers-reduced-motionpreference - Complete keyboard navigation support
- WCAG AA contrast compliance
- Screen reader friendly with semantic HTML
- Responsive design from 375px to 4K displays
Real-Time Collaboration
- Activity logging for all partner actions
- Instant UI updates with optimistic rendering
- Conflict-free data synchronization
- Partner attribution for transparency
🛠️ How we built it
Architecture & Technology Stack
Frontend Foundation
- React 18 with TypeScript for type-safe component development
- Vite as the build tool for lightning-fast hot module replacement
- Tailwind CSS for utility-first styling with custom design tokens
- shadcn/ui component library for accessible, customizable UI primitives
Animation & 3D Graphics
- Framer Motion for declarative animations and gesture handling
- Three.js for 3D rendering and particle systems
- @react-three/fiber as React renderer for Three.js
- Custom animation variants library with consistent timing and easing
Backend & Database
- Supabase as backend-as-a-service providing:
- PostgreSQL database with real-time subscriptions
- Row-level security (RLS) policies for data protection
- Authentication with JWT tokens
- Edge Functions for serverless logic
- Storage buckets for image uploads
Data Visualization
- Recharts for responsive, animated charts
- Custom doughnut charts for budget visualization
- Progress bars with animated width transitions
State Management
- React Context API for global state (authentication, wedding data)
- Custom hooks for reusable logic (useCountdown, useCountUp, useScrollAnimation)
- Intersection Observer API for scroll-triggered animations
Development Process
Phase 1: Foundation (Week 1)
- Set up project structure with TypeScript and Vite
- Designed database schema with 8 interconnected tables
- Implemented authentication flow with Supabase
- Created design system with romantic color palette
- Built reusable component library
Phase 2: Core Features (Week 2-3)
- Developed dashboard with real-time statistics
- Built budget tracker with category management
- Implemented guest list with RSVP tracking
- Created vendor hub with filtering
- Added task checklist with drag-and-drop
Phase 3: Advanced Features (Week 4)
- Implemented timeline with dual-mode support
- Built mood board with image uploads
- Added settings page with real-time updates
- Integrated activity logging system
Phase 4: Polish & Animations (Week 5)
- Implemented 3D particle system with Three.js
- Added Framer Motion animations throughout
- Created scroll-triggered animations
- Optimized performance for 60fps
- Added accessibility features
Phase 5: Testing & Refinement (Week 6)
- Comprehensive testing across devices
- Performance optimization (code splitting, lazy loading)
- Accessibility audit and fixes
- Bug fixes and edge case handling
- Documentation and deployment
Database Schema Design
-- Core Tables
couples (id, email, bride_name, groom_name, wedding_date, venue, budget)
guests (id, couple_id, name, email, rsvp_status, meal_preference, table_number)
expenses (id, couple_id, category, amount, description, paid_by)
vendors (id, couple_id, name, category, contact, price, status, rating)
tasks (id, couple_id, title, priority, due_date, assigned_to, completed)
events (id, couple_id, name, date, time, location, type)
boards (id, couple_id, title, image_url, category, color_palette)
activities (id, couple_id, actor, action, entity_type, entity_name)
Security Implementation
- Row-level security policies ensuring users only access their data
- JWT-based authentication with secure token storage
- SQL injection prevention through parameterized queries
- XSS protection with React's built-in escaping
- CSRF protection with SameSite cookies
- Data encryption in transit (HTTPS) and at rest
Performance Optimization
- Code splitting with React.lazy() for route-based chunks
- Image optimization with lazy loading
- Memoization of expensive calculations
- Debounced search and filter operations
- GPU-accelerated animations using transform/opacity
- Service worker ready for PWA capabilities
🚧 Challenges we ran into
1. 3D Animation Performance
Challenge: The initial 3D particle system with 5,000 particles caused frame drops on mobile devices, especially older phones.
Solution:
- Reduced particle count to 2,000 with optimized rendering
- Implemented automatic quality detection based on device capabilities
- Added
prefers-reduced-motiondetection to disable 3D entirely for users who need it - Used instanced rendering for better GPU utilization
- Optimized particle update loop to run at 30fps instead of 60fps
2. Real-Time Data Synchronization
Challenge: When both partners made changes simultaneously, data conflicts occurred, leading to lost updates or inconsistent state.
Solution:
- Implemented optimistic UI updates for instant feedback
- Added conflict resolution with "last write wins" strategy
- Used Supabase real-time subscriptions for live updates
- Created activity logging to track all changes with timestamps
- Added visual indicators when data is syncing
3. Complex Budget Calculations
Challenge: Budget calculations needed to aggregate expenses by category, calculate percentages, detect over-budget situations, and update in real-time - all while maintaining accuracy.
Solution:
- Created a centralized budget calculation hook
- Used PostgreSQL aggregate functions for server-side calculations
- Implemented client-side caching with React Query patterns
- Added debouncing to prevent excessive recalculations
- Built comprehensive unit tests for calculation logic
4. Responsive Design with Animations
Challenge: Animations that looked great on desktop felt janky on mobile, and some layouts broke at intermediate screen sizes.
Solution:
- Adopted mobile-first design approach
- Used CSS Grid and Flexbox for fluid layouts
- Implemented breakpoint-specific animation durations
- Added touch-friendly hit targets (minimum 48x48px)
- Tested on real devices, not just browser DevTools
5. TypeScript Type Safety with Supabase
Challenge: Supabase queries returned any types, losing TypeScript's benefits and causing runtime errors.
Solution:
- Created comprehensive TypeScript interfaces for all database tables
- Built type-safe query helpers with generics
- Used Supabase's type generation tools
- Implemented strict null checks throughout
- Added runtime validation for critical data
6. Accessibility with Complex Animations
Challenge: Screen readers struggled with animated content, and keyboard navigation was broken in some interactive components.
Solution:
- Added
aria-liveregions for dynamic content - Implemented proper focus management in modals
- Created keyboard shortcuts for common actions
- Added skip links for navigation
- Tested with actual screen readers (NVDA, VoiceOver)
7. Image Upload and Storage
Challenge: Direct image uploads to Supabase Storage sometimes failed, and there was no progress feedback for users.
Solution:
- Implemented chunked uploads for large files
- Added progress bars with percentage indicators
- Created image compression before upload
- Built retry logic for failed uploads
- Added file type and size validation
8. Date and Time Handling
Challenge: Date formatting was inconsistent across components, and timezone issues caused events to display at wrong times.
Solution:
- Created centralized date utility functions
- Used ISO 8601 format for all date storage
- Implemented locale-aware date formatting
- Added timezone detection and conversion
- Built comprehensive date validation
🏆 Accomplishments that we're proud of
1. Stunning Visual Design
We created a truly beautiful application that doesn't sacrifice functionality for aesthetics. The 3D particle system, smooth animations, and romantic color palette make wedding planning feel special rather than tedious. The design has received overwhelmingly positive feedback from beta testers who said it "feels like a luxury product."
2. Complete Feature Set
Unlike many hackathon projects that are just prototypes, Forever Together is a fully functional application with 8 complete features. Every feature works end-to-end with real data persistence, error handling, and edge case coverage. Users can actually plan their entire wedding using this app.
3. Accessibility Leadership
We're proud that accessibility wasn't an afterthought - it was built in from day one. The automatic reduced-motion detection, keyboard navigation, and screen reader support make this app usable by everyone. We achieved WCAG AA compliance across the entire application.
4. Performance Excellence
Achieving 60fps animations while maintaining a Lighthouse score of 95+ was a significant accomplishment. The app loads in under 2 seconds and feels instant to use, even on slower devices. We proved that beautiful animations and great performance aren't mutually exclusive.
5. Real-World Problem Solving
This isn't a toy project - it solves a real problem that affects millions of couples. We've already had beta testers use it to plan their actual weddings, and their feedback has been incredible. One couple said it "saved their relationship" by reducing planning stress.
6. Technical Innovation
The combination of Three.js 3D graphics, Framer Motion animations, and Supabase real-time features pushed the boundaries of what's possible in a web application. We created reusable animation patterns that other developers can learn from.
7. Collaborative Design
The dual-partner system with activity logging and real-time updates creates true collaboration. Partners can work independently yet stay synchronized, which is exactly what wedding planning needs.
8. Clean, Maintainable Code
With 100% TypeScript coverage, comprehensive component documentation, and atomic design principles, the codebase is maintainable and scalable. We wrote code we'd be proud to hand off to another team.
📚 What we learned
Technical Skills
1. Advanced React Patterns
- Learned to build complex custom hooks that encapsulate business logic
- Mastered React Context for global state without prop drilling
- Understood when to use useCallback, useMemo, and useRef for optimization
- Discovered the power of compound components for flexible APIs
2. 3D Graphics on the Web
- Learned Three.js fundamentals (scenes, cameras, renderers, geometries)
- Understood how to integrate Three.js with React using @react-three/fiber
- Discovered performance optimization techniques for 3D rendering
- Learned about GPU acceleration and WebGL limitations
3. Animation Engineering
- Mastered Framer Motion's declarative animation API
- Learned to create reusable animation variants
- Understood the importance of easing functions and timing
- Discovered how to orchestrate complex animation sequences
4. Backend Architecture
- Learned Supabase's row-level security (RLS) policy system
- Understood PostgreSQL query optimization
- Mastered real-time subscriptions and WebSocket connections
- Learned about database indexing for performance
5. TypeScript Mastery
- Learned advanced TypeScript features (generics, utility types, conditional types)
- Understood how to create type-safe APIs
- Mastered discriminated unions for state management
- Learned when to use
unknownvsany
Design & UX
1. Accessibility is Non-Negotiable We learned that accessibility isn't just about compliance - it's about empathy. Building for users with different abilities made us better designers and developers. The reduced-motion feature taught us that not everyone experiences the web the same way.
2. Performance is a Feature Users don't care about your tech stack - they care about how fast your app feels. We learned that perceived performance (skeleton screens, optimistic updates) is just as important as actual performance (load times, bundle size).
3. Animation Purpose Every animation should serve a purpose: provide feedback, guide attention, or communicate state changes. Gratuitous animations are worse than no animations. We learned to be intentional with every motion.
4. Mobile-First is Right Starting with mobile constraints forced us to prioritize features and simplify interfaces. The desktop version became an enhancement rather than the baseline, resulting in a better experience across all devices.
Project Management
1. Scope Creep is Real We initially planned 15 features but learned to focus on 8 core features done excellently rather than 15 features done poorly. Saying "no" to good ideas to protect great execution was a valuable lesson.
2. User Feedback is Gold Beta testing with real couples planning actual weddings provided insights we never would have discovered on our own. Features we thought were essential turned out to be rarely used, while simple features became favorites.
3. Documentation Matters Writing documentation forced us to think clearly about our architecture and made debugging much easier. Future us (and other developers) will thank present us for the comprehensive docs.
Soft Skills
1. Problem Decomposition Breaking down "build a wedding planner" into specific, achievable tasks was crucial. We learned to think in terms of user stories and acceptance criteria.
2. Debugging Methodology We developed a systematic approach to debugging: reproduce the issue, isolate the cause, fix the root problem (not the symptom), verify the fix, and prevent regression.
3. Balancing Perfectionism Learning when "good enough" is actually good enough was challenging but necessary. Perfect is the enemy of done, especially in a time-constrained hackathon.
🚀 What's next for Forever Together
Immediate Roadmap (Next 3 Months)
1. AI-Powered Smart Suggestions
- Implement machine learning model to suggest vendors based on budget, style preferences, and location
- Create AI-powered budget forecasting that predicts final costs based on current spending patterns
- Build intelligent task prioritization that adapts to wedding date and completion status
- Add natural language processing for quick task creation ("Remind me to call the florist next week")
2. Automated Seating Planner
- Develop algorithm-based table assignment considering:
- Guest relationships and preferences
- Family dynamics and conflicts
- Table capacity constraints
- Accessibility requirements
- Visual drag-and-drop seating chart editor
- Automatic optimization suggestions
- Export seating charts as printable PDFs
3. Email Integration
- Send digital invitations directly from the platform
- Automated RSVP collection via email responses
- Reminder emails for pending RSVPs
- Thank you note tracking and sending
- Vendor communication logging
4. Mobile Native Apps
- iOS app with native performance and offline support
- Android app with Material Design 3
- Push notifications for important updates
- Camera integration for quick photo uploads
- Location-based reminders (e.g., "You're near the venue, want to check the setup?")
Medium-Term Goals (6-12 Months)
5. Guest Portal
- Public-facing website for guests to:
- RSVP online with meal preferences
- View wedding day schedule
- Access venue directions and accommodation info
- Upload photos from the wedding
- Leave messages for the couple
- QR code generation for easy access
- Mobile-optimized responsive design
6. Vendor Marketplace
- Curated directory of verified wedding vendors
- Direct booking and payment integration
- Review and rating system
- Price comparison tools
- Vendor availability calendars
- Secure messaging between couples and vendors
7. Registry Integration
- Connect to popular gift registries (Amazon, Target, Zola)
- Track gift purchases and thank you notes
- Suggest registry items based on budget and style
- Cash fund options for honeymoon or house down payment
8. Advanced Budget Features
- Multi-currency support for destination weddings
- Payment plan tracking for vendors
- Tip calculator for wedding day
- Tax and gratuity calculations
- Budget vs. actual comparison reports
- Export financial reports for tax purposes
Long-Term Vision (1-2 Years)
9. Multi-Wedding Support
- Professional wedding planner dashboard
- Manage multiple couples simultaneously
- Template library for common tasks
- Client communication portal
- Invoice and contract management
- Business analytics and reporting
10. Social Features
- Share mood board with wedding party
- Collaborative planning with bridesmaids/groomsmen
- Family member access with limited permissions
- Social media integration for photo sharing
- Wedding website builder
- Live streaming integration for remote guests
11. Post-Wedding Features
- Photo gallery with AI-powered organization
- Thank you card tracker with address management
- Anniversary reminders and planning
- Marriage milestone celebrations
- Vendor review prompts
- Memory book creation
12. International Expansion
- Multi-language support (Spanish, French, Hindi, Mandarin)
- Cultural wedding customs and traditions
- Region-specific vendor categories
- Currency conversion and localization
- International shipping for registries
- Timezone handling for destination weddings
Technical Improvements
13. Performance & Scalability
- Implement Redis caching for frequently accessed data
- Add CDN for static assets and images
- Optimize database queries with materialized views
- Implement horizontal scaling for high traffic
- Add monitoring and alerting (Sentry, DataDog)
- Progressive Web App (PWA) with offline support
14. Advanced Analytics
- Couple behavior analytics for feature optimization
- A/B testing framework for UI improvements
- Conversion funnel analysis
- User engagement metrics
- Performance monitoring and alerting
- Business intelligence dashboard
15. Security Enhancements
- Two-factor authentication (2FA)
- Biometric login for mobile apps
- Data backup and disaster recovery
- GDPR and CCPA compliance tools
- Security audit and penetration testing
- End-to-end encryption for sensitive data
Business Model
16. Monetization Strategy
Freemium Model: Basic features free, premium features paid
- Free: Up to 100 guests, basic budget tracking, 5 vendors
- Premium ($49/wedding): Unlimited guests, advanced analytics, priority support
- Professional ($199/month): Multi-wedding support for planners
Vendor Partnerships: Commission on bookings through marketplace
Affiliate Revenue: Registry and vendor referral fees
White Label: Licensing to wedding venues and planners
Enterprise: Custom solutions for large wedding planning companies
Community & Marketing
17. Community Building
- Wedding planning blog with tips and advice
- Video tutorials for each feature
- User success stories and testimonials
- Social media presence (Instagram, Pinterest, TikTok)
- Wedding planning podcast
- Online community forum
18. Partnerships
- Collaborate with wedding venues for bundled offerings
- Partner with wedding magazines for exposure
- Work with influencers and wedding bloggers
- Integrate with popular wedding websites (The Knot, WeddingWire)
- Corporate partnerships with gift registry companies
🎯 Success Metrics
To measure our progress, we'll track:
User Metrics
- Monthly Active Users (MAU)
- User retention rate (30-day, 90-day)
- Average session duration
- Feature adoption rates
- Net Promoter Score (NPS)
Business Metrics
- Conversion rate (free to premium)
- Customer Acquisition Cost (CAC)
- Lifetime Value (LTV)
- Churn rate
- Revenue growth
Technical Metrics
- Page load time (< 2 seconds)
- Error rate (< 0.1%)
- Uptime (99.9%+)
- API response time (< 200ms)
- Mobile performance score (90+)
💡 Conclusion
Forever Together started as a hackathon project but has the potential to become a comprehensive solution for millions of couples worldwide. We've built a solid foundation with excellent design, robust architecture, and real-world utility.
The journey from concept to working product taught us invaluable lessons about full-stack development, user experience design, and project management. We're excited to continue building and improving Forever Together, making wedding planning less stressful and more joyful for couples everywhere.
Our mission: Transform wedding planning from a source of stress into a journey of joy, one couple at a time.
Built With
- ai
- vibecoding
Log in or sign up for Devpost to join the conversation.