Giter VIP home page Giter VIP logo

laravel-mailcoach-docs-old's Introduction

laravel-mailcoach docs

This repository contains the content of the documentation section of the Mailcoach website. Feel free to PR improvements and typo fixes.

Support us

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Contributing

Please see CONTRIBUTING for details.

License

The MIT License (MIT). Please see License File for more information.

laravel-mailcoach-docs-old's People

Contributors

adrianmrn avatar bettina-at-wildbit avatar blessingdube avatar david-nguyen avatar drjamesj avatar emargareten avatar freekmurze avatar gc-mark avatar ingoldsby avatar jbraband avatar joostvanhoof avatar leeovery avatar lorenzosapora avatar lucared avatar mbardelmeijer avatar miansaleem avatar mokadev avatar nckrtl avatar prolonginc avatar raulp avatar riasvdv avatar rjnicolai avatar rocramer avatar rubenvanassche avatar ryancwalsh avatar stefanbauer avatar timmoh avatar willemvb avatar wouterbrouwers avatar yannikfirre avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

laravel-mailcoach-docs-old's Issues

Document tags

The packages docs don't mention how tags can be used on subscribers. We should add that.

Old versioned documentation for Configuring Mail Providers

Hi, I'm trying to set up mail coach using the documentation and realize it's outdated. take for example https://spatie.be/docs/laravel-mailcoach/v5/configuring-mail-providers/mailgun. Mailcoach doesn't provide the Mail configuration page anymore and I keep running into this error when I try to create campaigns:

Exception: count(): Argument #1 ($value) must be of type Countable|array, null given (View: /var/www/html/vendor/spatie/laravel-mailcoach/resources/views/app/emailLists/layouts/emailList.blade.php) (View: /var/www/html/vendor/spatie/laravel-mailcoach/resources/views/app/emailLists/layouts/emailList.blade.php);

How do I send a single transactional email to one email address?

I understand this is a email marketing / campaign management system. But I see nowhere it can send a single email with a template. I just want to have a templated email for purposes like Forgot Email, Welcome mail, Order Created; these kinds of emails. I'm not sure how to fit this requirement in the mailcoach.

Was it intentional to keep this kind of thing outside the scope of this project? If so, why? If this is part of the mailcoach, then Mailcoach has the potential to become the complete email solution for a SaaS app.

Next topic link

Hi,

The "Next topic ->" link at the bottom of each doc page redirects to the same page (getting-a-license)

Using database instead of redis for queue connection

Hi - We are using database for our current env QUEUE_CONNECTION. It seems like mail coach requires redis.
We are embedding mailcoach into our existing laravel app and want to minimize the changes to the existing app.
Can mail coach either use

  1. The existing database queue drive (I think the answer to this is most prob no)
  2. Alternatively is there is way to setup, where mailcoach uses the redis queue and the other part of the application keep using the database.

Method parameter is missing

Hey guys,

I found here a small error in a sample code.
The method Subscriber::findForEmail requires not only the email address of the user, but also the corresponding email list.

-Florian

Add section for docker based install.

Docker is a very fast way to get up and running. This docker setup will make create a fully working app with ngrok and Horizon configured out of the box. I would suggest to add it to your Mailcoach app.

Docker setup

Step 1: Add files

Copy the below files into docker-compose.yml and vhost.conf in the root of the project.

Step 2: Build the app

docker-compose build
docker-compose up -d --remove-orphans

Step 3: Migrate

docker-compose exec php php artisan migrate

Step 4: Lets go

Then visit http://mailcoach.test:3100

Step 5: Add a tunnel for the webhook

Visit http://mailcoach.test:4551

The two files are:

docker-compose.yml

version: '2'

services:
  web:
    image: nginx
    ports:
      - '3100:80'
    volumes:
      - './vhost.conf:/etc/nginx/conf.d/default.conf:ro'
      - '.:/var/www/html'
    depends_on:
      - php
    networks:
      default:
        aliases:
          - mailcoach.test

  php:
    image: napp/php-ci:7.4-fpm
    working_dir: /var/www/html
    volumes:
      - '.:/var/www/html:cached'
    environment:
      - APP_DEBUG=true
    networks:
      default:
        aliases:
        - php.backend

  mysql:
    image: mysql:8.0
    volumes:
      - './docker/mysql/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d'
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    ports:
      - '3306:3306'
    environment:
      - MYSQL_DATABASE=mailcoach
      - MYSQL_USER=mailcoach
      - MYSQL_ROOT_PASSWORD=root
      - MYSQL_PASSWORD=secret

  redis:
    image: redis
    ports:
      - '6379:6379'

  horizon:
    image: napp/php-ci:7.4-horizon
    volumes:
      - '.:/var/www/html'
    links:
      - redis
      - mysql

  ngrok:
    image: shkoliar/ngrok:latest
    ports:
      - 4551:4551
    links:
      - web
    environment:
      - DOMAIN=mailcoach.test
      - PORT=80
      - REGION=eu

vhost.conf

server {
   listen 80;

   root /var/www/html/public;

   index index.html index.htm index.php;
   server_name mailcoach.test;
   sendfile off;

   charset utf-8;

   location / {
       try_files $uri $uri/ /index.php?$query_string;
   }

   location = /favicon.ico { access_log off; log_not_found off; }
   location = /robots.txt  { access_log off; log_not_found off; }

   error_log  /var/log/nginx/error.log;
   access_log /var/log/nginx/access.log;

   error_page 404 /index.php;

   location ~ \.php$ {
       fastcgi_split_path_info ^(.+\.php)(/.+)$;
       fastcgi_pass php.backend:9000;
       fastcgi_index index.php;
       include fastcgi_params;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       fastcgi_param PATH_INFO $fastcgi_path_info;
       fastcgi_read_timeout 300;
   }

   location ~ /\.ht {
       deny all;
   }
}

Do you think its a great idea?
Ill gladly make a PR on the https://github.com/spatie/Mailcoach repo.

Add Documentation for open and click tracking (ses) using own subdomain

With Amazon SES you can fairly easy define your own subdomain for open and click tracking...
Since Amazon advices you to use a CDN such as Amazon CloudFront (cloudflare works as well) you can archive this functionality also with nginx...

The just need to configure a nginx host as proxy for your desired AWS tracking domain!

AWS tracking domains

AWS Region AWS tracking domain
US East (N. Virginia) r.us-east-1.awstrack.me
US West (Oregon) r.us-west-2.awstrack.me
Asia Pacific (Mumbai) r.ap-south-1.awstrack.me
Asia Pacific (Sydney) r.ap-southeast-2.awstrack.me
Europe (Frankfurt) r.eu-central-1.awstrack.me
Europe (Ireland) r.eu-west-1.awstrack.me

NGINX config

location / {
    proxy_pass https://[AWS tracking domain];
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

Please note: Your host must be configured for ssl!

V3 SES instructions incomplete for tracking opens and clicks

I just successfully completed the SES integration on V3 with click & open event tracking through some trial and error. The version 3 docs are accurate, but incomplete. Following the docs for SES does not include a required step of selecting clicks & opens on the SES configuration set step and selecting domain. Once those two settings are checked, it allows the clicks & opens to also be tracked, otherwise we received no click or open events.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.