Skip to content

droomvriendje-stack/Droomvriendjes.nl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,341 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Droomvriendjes - E-commerce Platform

Een complete e-commerce webshop voor slaapknuffels met nachtlampje en rustgevende geluiden.

πŸ—οΈ Architectuur

Component Platform Status
Domain TransIP β†’ Cloudflare βœ…
DNS + SSL Cloudflare βœ…
Frontend Cloudflare Pages βœ…
Backend Railway.app βœ…
Database Supabase (PostgreSQL) βœ…
Storage Supabase Storage βœ…
Payments Mollie βœ…
Email Postmark βœ…

πŸš€ Lokale Ontwikkeling

Vereisten

  • Node.js 18+
  • Python 3.11+
  • Docker (optioneel)

1. Clone de repository

git clone https://github.com/droomvriendje-stack/DroomvriendjeGithubnieuwste.git
cd DroomvriendjeGithubnieuwste

2. Environment Variables

Backend (.env in root of /backend)

# Supabase
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_KEY=your-service-key
SUPABASE_ANON_KEY=your-anon-key

# Mollie Payments
MOLLIE_API_KEY=live_xxxxx
MOLLIE_PROFILE_ID=pfl_xxxxx

# URLs
FRONTEND_URL=https://droomvriendjes.nl
API_URL=https://api.droomvriendjes.nl
CORS_ORIGINS=https://droomvriendjes.nl

# Email
POSTMARK_API_TOKEN=your-token
SMTP_FROM=info@droomvriendjes.nl

# Sendcloud Shipping
SENDCLOUD_PUBLIC_KEY=your-key
SENDCLOUD_SECRET_KEY=your-secret

Frontend (.env in /frontend)

REACT_APP_BACKEND_URL=https://api.droomvriendjes.nl
REACT_APP_SUPABASE_URL=https://your-project.supabase.co
REACT_APP_SUPABASE_ANON_KEY=your-anon-key

3. Backend starten

cd backend
pip install -r ../requirements.txt
uvicorn server:app --reload --port 8000

4. Frontend starten

cd frontend
yarn install
yarn start

5. Docker (optioneel)

docker-compose up

πŸ“ Project Structuur

/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ server.py          # FastAPI main application
β”‚   β”œβ”€β”€ routes/            # API endpoints
β”‚   β”‚   β”œβ”€β”€ products_supabase.py
β”‚   β”‚   β”œβ”€β”€ orders_supabase.py
β”‚   β”‚   β”œβ”€β”€ reviews_supabase.py
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ services/          # Business logic
β”‚   └── utils/             # Helpers
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ pages/         # React pages
β”‚   β”‚   β”œβ”€β”€ components/    # Reusable components
β”‚   β”‚   β”œβ”€β”€ context/       # React context (cart, auth)
β”‚   β”‚   └── hooks/         # Custom hooks
β”‚   └── public/
β”œβ”€β”€ supabase/
β”‚   └── migrations/        # Database schema
β”œβ”€β”€ Dockerfile             # Railway backend
β”œβ”€β”€ docker-compose.yml     # Local development
β”œβ”€β”€ railway.toml           # Railway config
└── requirements.txt       # Python dependencies

πŸ—„οΈ Database Schema

De database draait op Supabase (PostgreSQL). Zie /supabase/migrations/ voor het volledige schema.

Belangrijkste tabellen:

  • products - Producten met afbeeldingen, SEO, prijzen
  • orders - Bestellingen met items, status, betaling
  • customers - Klantgegevens
  • reviews - Productbeoordelingen
  • discount_codes - Kortingscodes
  • email_logs - Email tracking
  • email_campaigns - Marketing campagnes

🌐 Deployment

Railway (Backend)

  1. Connect GitHub

    • Ga naar railway.app
    • New Project β†’ Deploy from GitHub repo
  2. Environment Variables Voeg alle variables uit /backend/.env toe in Railway Settings β†’ Variables

  3. Deploy Railway detecteert automatisch de Dockerfile en deployt

  4. Custom Domain Settings β†’ Domains β†’ Add api.droomvriendjes.nl

Cloudflare Pages (Frontend)

  1. Connect GitHub

    • Ga naar Cloudflare Dashboard β†’ Pages
    • Create Project β†’ Connect to Git
  2. Build Settings

    Framework: Create React App
    Build command: yarn build
    Output directory: build
    Root directory: frontend
    
  3. Environment Variables

    REACT_APP_BACKEND_URL=https://api.droomvriendjes.nl
    REACT_APP_SUPABASE_URL=https://your-project.supabase.co
    REACT_APP_SUPABASE_ANON_KEY=your-key
    
  4. Custom Domain Add droomvriendjes.nl en www.droomvriendjes.nl

Cloudflare DNS

Type Name Target Proxy
CNAME @ Cloudflare Pages URL βœ… Proxied
CNAME www Cloudflare Pages URL βœ… Proxied
CNAME api Railway URL ❌ DNS only

πŸ”§ Wijzigingen Maken

Via GitHub/Cursor

  1. Open de repo in Cursor.sh of VS Code
  2. Maak je wijzigingen
  3. Commit en push naar main
  4. Railway en Cloudflare Pages deployen automatisch

Via Emergent (niet meer nodig)

Dit project is nu volledig zelfstandig en draait zonder Emergent.

πŸ“§ Email Marketing

Campagnes verzenden

  1. Ga naar Admin β†’ Email Marketing
  2. Upload CSV met contacten
  3. Selecteer template
  4. Klik "Verstuur"

Tracking

Open/click tracking is ingebouwd. Bekijk statistieken in Admin β†’ Email Logs.

πŸ’³ Betalingen

Betalingen worden verwerkt via Mollie. Webhook URL:

https://api.droomvriendjes.nl/api/webhook/mollie

πŸ”‘ Kortingscodes

Actieve codes:

  • WELKOM10 - 10% korting voor nieuwe klanten
  • EENMALIG2026 - 10% korting (geldig tot 31-12-2026)

πŸ“± WhatsApp Support

WhatsApp knop is alleen zichtbaar op /contact pagina. Nummer: +31 6 84588815

GTM Container: GTM-W9PZRP4B

πŸ” SEO Keywords

De website is geoptimaliseerd voor:

  • slaapknuffel met sterrenprojectie
  • slaapknuffel white noise kinderen
  • knuffel die helpt met slapen
  • slaapknuffel nachtlampje kind
  • slaapknuffel cadeau baby shower
  • slaapknuffel volwassenen
  • kind bang in het donker knuffel

πŸ› Troubleshooting

Backend niet bereikbaar

curl https://api.droomvriendjes.nl/health

CORS errors

Check CORS_ORIGINS in Railway env vars (exact match, geen trailing slash)

Database problemen

Check Supabase dashboard β†’ Logs

Frontend build faalt

cd frontend && yarn build

πŸ“ž Support


Laatste update: Juli 2025 Gemigreerd van Emergent.sh naar zelfstandige hosting

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors