Skip to content
/ waddda Public

Waddda.com helps you capture and remember the good moments in your relationships to strengthen bonds and soften hearts during conflicts. Demo: https://youtu.be/GuwuUd3l59w

Notifications You must be signed in to change notification settings

edriso/waddda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

وَدَّ (Waddda)

وَدَّ (Waddda) - derived from the Arabic root مودة (mawadda, meaning love/affection) - is a simple, one-page app that helps you treasure and remember the good moments in your relationships. When conflicts arise, it's easy to forget the love and kindness shared, but Waddda lets you record and revisit your favorite memories. The app features a calendar where you can see your memories, and by clicking on any day, you can view the specific memories for that day. You can also filter the calendar by contact or memory color, making it easier to find the moments that matter most. Waddda helps you reconnect and strengthen bonds, one memory at a time.

Features

  • 📅 Calendar view of memories
  • 👥 Organize memories by contact
  • 🎨 Color-code memories for easy filtering
  • 📝 Rich memory entries with titles, content, and media
  • 🔍 Filter memories by contact or color

Setup

Prerequisites

  • PHP 8.2 or higher
  • Composer
  • Node.js and npm
  • SQLite (or MySQL/PostgreSQL)

Installation

  1. Clone the repository:
git clone <repository-url>
cd waddda
  1. Install PHP dependencies:
composer install
  1. Install Node.js dependencies:
npm install
  1. Set up environment:
cp .env.example .env
php artisan key:generate
  1. Run migrations:
php artisan migrate
  1. Seed the database (including colors for production):
php artisan db:seed

Production Setup

For production environments, make sure to run the color seeder:

php artisan db:seed --class=ColorSeeder

This will populate the colors table with predefined color options that are essential for the app to function properly.

Test Data

To seed the database with test data (test user with contacts and memories covering all scenarios):

php artisan db:seed --class=TestUserSeeder

This will create:

  • A test user (email: test@example.com, password: password)
  • 4 contacts (Alice, Bob, Charlie, Diana)
  • Multiple memories covering all scenarios:
    • Memories with contact and color
    • Memories with contact but no color
    • Memories with color but no contact
    • Memories with neither contact nor color
    • Multiple memories on the same date
    • Memories spread across different dates

This is useful for testing the calendar functionality and all filtering options.

Development

Start the development server:

composer run dev

This will start:

  • Laravel development server
  • Vite dev server
  • Queue worker
  • Pail (log viewer)

Or use the individual commands:

php artisan serve
npm run dev

Tech Stack

  • Backend: Laravel 12
  • Frontend: React 19 with TypeScript
  • UI: Tailwind CSS with Radix UI components
  • Architecture: Inertia.js for seamless SPA experience
  • Authentication: Laravel Fortify

About

Waddda.com helps you capture and remember the good moments in your relationships to strengthen bonds and soften hearts during conflicts. Demo: https://youtu.be/GuwuUd3l59w

Resources

Stars

Watchers

Forks