Couple Tracker is an interactive, feature-rich web application built to bring couples closer. Whether you're tracking your shared goals, saving the most precious memories, aligning your moods, or just planning the next movie night, this application serves as your personal relationship digital diary!
With a beautifully designed UI, smooth functionality, and secure user authentication, Couple Tracker acts as your all-in-one private hub.
Discover a magical ecosystem crafted specifically for couples:
- 🔐 Dual-End Authentication: Secure sign-up, login (including Google OAuth), password resets, and OTP verifications to keep your data private and safe.
- 👩❤️👨 Couple Connection System: Create a couple profile and securely invite your partner to join your digital world.
- 📸 Memory Lane & Snaps: Upload cherished photos to your memory album, manage snapshots, and never lose a sweet moment. Cloudinary handles all media storage efficiently!
- 📅 Milestone Tracking: Never forget an anniversary or an important date! Add, edit, and visualize your relationship milestones.
- 😊 Mood Sync: A real-time Mood Tracker. Log your mood and see your partner's mood instantly. Better communication starts with knowing how the other feels!
- 🍿 Movie & Review Tracker: Plan your next binge! Add movies, write shared reviews, and rank your favorite films.
- 🎶 Shared Playlists & Songs: Connect and manage your favorite shared songs and playlists. Music connects hearts!
- 🎯 Bucket List: A dynamic checklist of everything you both want to accomplish together. Dream big and cross them off one by one!
- 🌸 Period Tracker: Built-in functionality specifically to stay aware and supportive.
- 🔔 Push Notifications & Reminders: Web push notifications (via pywebpush) and automated inactivity cron jobs ensure you are always engaged and reminded of your love.
graph TD
%% Define styles for aesthetic
classDef user fill:#FFE5EC,stroke:#FF4D6D,stroke-width:2px,color:#800F2F
classDef server fill:#D8F3DC,stroke:#1B4332,stroke-width:2px,color:#081C15
classDef db fill:#CAF0F8,stroke:#0077B6,stroke-width:2px,color:#03045E
classDef cloud fill:#E0AAFF,stroke:#5A189A,stroke-width:2px,color:#240046
classDef push fill:#FFF3B0,stroke:#E09F3E,stroke-width:2px,color:#540B0E
UserA("👤 Partner A"):::user <-->|"HTTPS & Auth (Google/Session)"| Django["🚂 Django App Server (Vercel)"]:::server
UserB("👤 Partner B"):::user <-->|"HTTPS & Auth (Google/Session)"| Django
Django <-->|"Django ORM"| Postgres[("🐘 PostgreSQL Database")]:::db
Django <-->|"Media Storage/Retrieval"| Cloudinary["☁️ Cloudinary CDN"]:::cloud
Cloudinary -->|"Serves Optimized Media"| UserA
Cloudinary -->|"Serves Optimized Media"| UserB
Django -->|"PyWebPush Engine"| PushService["🔔 Browser Push Service (FCM/Apple)"]:::push
PushService -->|"Triggers Service Worker"| UserA
PushService -->|"Triggers Service Worker"| UserB
Cron["⏰ Cron Jobs"]:::server -->|"Triggers Inactivity API"| Django
- Onboarding: Users register for an account (Standard or via Google).
- Pairing: A user creates a "Couple" and generates a link/code for their partner. Their partner joins, linking their accounts in the database.
- The Dashboard: Once paired, both users land on a shared dashboard where they can interact with the various modules.
- Real-time Syncing: As you upload a memory, add a movie, or update your mood, it reflects directly in your partner's dashboard seamlessly!
This project relies on a robust set of modern technologies:
- HTML5 & CSS3: For structural layout and beautiful custom styling.
- JavaScript (Vanilla/ES6): To handle interactive UI, AJAX requests, DOM manipulation, Modal interactions, and Web Push Service Workers.
- (Note: Embellished with beautiful typography via Google Fonts and crisp icons)
- Python (v3.x): The core programming language powering the logic.
- Django (v5.0.6): A high-level Python web framework encouraging rapid development and clean design.
- Authentication:
google-authfor seamless Google logins and Django's robust default authentication system.
- PostgreSQL: Relational database handling structured data (Users, Couples, Movies, Reviews).
- Cloudinary: High-performance cloud storage for all couple images and memories.
- Vercel:
vercel.json,gunicorn,whitenoise, anddj-database-urlperfectly configured to deploy as a serverless or managed platform application. - Asynchronous/Push Services:
pywebpushandpy-vapidfor web push notifications. - Payments (Optional Module):
razorpayintegration included for any premium upgrade options.
