Skip to content

user-synax/couple-vault

Repository files navigation

πŸ’– Couple Vault πŸ’–

Next.js React Tailwind CSS MongoDB Cloudinary

A private, secure, and beautiful space for couples to preserve their most cherished memories.


✨ Overview

Couple Vault is a specialized digital sanctuary designed for partners to store and share images, videos, and voice notes in total privacy. Unlike social media, this is a dedicated "us-only" space that focuses on security, intimacy, and high-quality media preservation.

πŸ”— Netlify Live β€’ Vercel Live


πŸš€ Key Features

πŸ” Uncompromising Privacy

  • End-to-End Vault Protection: Every vault is protected by a unique 256-bit secret password generated upon creation.
  • No Indexing: Private vaults are hidden from search engines and crawlers.
  • Secure Sessions: Powered by iron-session for robust, encrypted user authentication.

πŸ“Έ Universal Media Support

  • Dynamic Masonry Grid: A beautiful, responsive layout for all your memories.
  • Smart Modal Viewer: An immersive experience for viewing high-res images and streaming videos.
  • Voice Memories: Integrated Waveform visualizer for voice notes using wavesurfer.js.

πŸ›  Powerful Management

  • Vault Personalization: Set vault names, partner identities, and custom secret messages.
  • Memory Stats: Track your journey with automatic statistics on memory counts and activity.
  • Easy Uploads: Seamlessly upload and manage media with automatic optimization via Cloudinary.

πŸ›  Tech Stack

Category Technology
Frontend Next.js 15, React 19, Tailwind CSS 4.0
Backend Next.js API Routes, Mongoose (MongoDB)
Authentication Iron Session
Media Hosting Cloudinary (Signed URLs for security)
UI Components Shadcn/UI, Lucide React
Utilities WaveSurfer.js, Date-fns

πŸ›  Installation & Setup

  1. Clone the repository

    git clone https://github.com/yourusername/couplevault.git
    cd couplevault
  2. Install dependencies

    npm install
  3. Set up Environment Variables Create a .env.local file in the root directory:

    MONGODB_URI=your_mongodb_connection_string
    SESSION_SECRET=a_long_random_string_at_least_32_chars
    CLOUDINARY_CLOUD_NAME=your_cloud_name
    CLOUDINARY_API_KEY=your_api_key
    CLOUDINARY_API_SECRET=your_api_secret
  4. Run the development server

    npm run dev

    Open http://localhost:3000 to see the result.


πŸ›‘ Security First

  • Secure Media Access: All media files are served via Cloudinary Signed URLs that expire automatically, preventing unauthorized access.
  • Password Hashing: Vault passwords are never stored in plain text.
  • Private-by-Default: No public search or discovery features.

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with ❀️ for couples everywhere.

About

πŸ’– A private, secure, and beautiful digital sanctuary for couples to preserve cherished memories. Features end-to-end vault protection, universal media support (images, videos, voice notes), and encrypted privacy. Built with Next.js 15, Tailwind CSS 4, and MongoDB.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors