Christmas Community

Manage family gift exchanges with shared wishlists. Prevent double-gifting, track desired items, and customize lists for holidays, birthdays, or weddings.

Coordinate your family's holiday shopping and gift exchanges with a dedicated wishlist platform. This self-hosted application provides a centralized space for everyone to share what they want, ensuring relatives can easily find perfect presents while completely avoiding the awkwardness of double-gifting. Whether you are planning for the holidays, a birthday, or a wedding, the flexible configuration adapts to your specific celebration needs.

Key benefits and features include:

  • Single List Mode: Restrict access to a primary wishlist, perfect for specific events like weddings or birthdays.
  • Customizable Interface: Switch between modern table views or traditional card layouts, and apply custom CSS to personalize the look.
  • Single Sign-On (SSO): Integrate with Google or any OIDC provider for quick and secure user authentication.
  • Automated Product Data: Automatically fetch product details from supported retail websites to save time.
  • Flexible Deployment: Easily host the application using Docker or Unraid for quick setup.

Directory Structure

christmas-community
db-data
storage
.env
docker-compose.yml

docker-compose.yml

services:
  app:
    image: wingysam/christmas-community:latest
    restart: unless-stopped
    ports:
      - "8080:80"
    environment:
      - APP_NAME=Christmas
      - APP_ENV=production
      - APP_KEY=${APP_KEY}
      - APP_DEBUG=false
      - APP_URL=${APP_URL}
      - DB_CONNECTION=mysql
      - DB_HOST=db
      - DB_PORT=3306
      - DB_DATABASE=christmas
      - DB_USERNAME=christmas
      - DB_PASSWORD=${DB_PASSWORD}
      - MAIL_MAILER=smtp
      - MAIL_HOST=${MAIL_HOST}
      - MAIL_PORT=${MAIL_PORT}
      - MAIL_USERNAME=${MAIL_USERNAME}
      - MAIL_PASSWORD=${MAIL_PASSWORD}
      - MAIL_ENCRYPTION=${MAIL_ENCRYPTION}
      - MAIL_FROM_ADDRESS=${MAIL_FROM_ADDRESS}
      - MAIL_FROM_NAME=${MAIL_FROM_NAME}
    volumes:
      - ./storage:/var/www/html/storage
    depends_on:
      - db

  db:
    image: mariadb:10.6
    restart: unless-stopped
    environment:
      - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
      - MYSQL_DATABASE=christmas
      - MYSQL_USER=christmas
      - MYSQL_PASSWORD=${DB_PASSWORD}
    volumes:
      - ./db-data:/var/lib/mysql

.env

APP_KEY=base64:YourGeneratedAppKeyHere32CharsLength=
APP_URL=http://localhost:8080

DB_PASSWORD=secure_database_password
DB_ROOT_PASSWORD=secure_root_password

MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=hello@example.com
MAIL_FROM_NAME="Christmas Community"
Categories:

Share:

Ad
Favicon

 

  
 

Similar to Christmas Community

Favicon

 

  
  
Favicon

 

  
  
Favicon