This application gives you the ability to send a newsletter to multiple subscribers with use of SMTP or an external driver like Mailgun

Overview

Laravel Newsletter

StyleCI Scrutinizer Code Quality Code Intelligence Status Code Intelligence Status

Laravel Newsletter is an open source project that can be used for sending newsletters to multiple subscribers, mailing lists, ... at once. This project can be used together with free mailing applications such as MailGun.

Installation

Step 1

First of all you need to clone the repository and install it using composer.

git clone [email protected]:NathanGeerinck/laravel-newsletter.git
cd laravel-newsletter && composer install
php artisan laravel-newsletter:install
npm run production

Step 2

Then you need to create a database and fill out the credentials in the .env file. An example:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel-newsletter
DB_USERNAME=root
DB_PASSWORD=root

Once you've created the database you can migrate all the tables into your database by running:

php artisan migrate

If you want to import the demo data then you can run:

php artisan laravel-newsletter:demo

Step 3

For sending emails you need to fillout your mail credentials.. You can use a service like Mailgun. You can adjust these settings also in the .env file.

MAIL_DRIVER=smtp
MAIL_HOST=mailgun.org
MAIL_PORT=2525
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=null

Step 4

If you want to use a Queue, it's possible!

Finish

Now you're ready to rock and roll! Visit the /register page of you're application and create an account! ;)

If you ran the php artisan laravel-newsletter:demo command, you can login with '[email protected]' and 'test123'.

Roadmap

  • Translate the application to more languages (now available: English, Dutch)
  • Email bounce tracking
  • Creating an API
  • Importing subscriptions with use of an URL (JSON)

License

The laravel-newsletter application is open source software licensed under the license MIT.

Contributors

Donate

If you love this project and you appreciate my work.. You might consider buying me a coffee. ☕️

Buy Me A Coffee

Comments
  • Laravel 5.5 Shift

    Laravel 5.5 Shift

    This pull request includes the changes for upgrading to Laravel 5.5. Feel free to commit any additional changes to the shift-7172 branch.

    Before merging, you should:

    • Checkout the shift-7172 branch
    • Review all pull request comments for additional changes
    • Update your dependencies for Laravel 5.5
    • Run composer update (if the pre-scripts fail, add --no-scripts)
    • Thoroughly test your application

    If you need help with your upgrade, check out the Shift Human Services or join the Shifty Coders Slack room to get answers to all your Laravel questions.

    opened by NathanGeerinck 11
  • Laravel 5.4 Shift

    Laravel 5.4 Shift

    This pull request includes the changes for upgrading to Laravel 5.4. Feel free to commit any additional changes to the shift-3496 branch.

    Before merging, you should:

    • Checkout the shift-3496 branch
    • Review all pull request comments for additional changes
    • Run composer update (if the pre-commands fail, add --no-scripts)
    • Thoroughly test your application

    If you would like more help with your upgrade, check out the human services from Laravel Shift. And if you want to level-up your Git skills, check out Getting Git.

    opened by NathanGeerinck 10
  • Multilanguage an option?

    Multilanguage an option?

    Maybe you can build it so that you can change language for the application inside the settings menu.

    If you can make everything translated in EN files I can translate to Dutch if you want.

    opened by Cannonb4ll 3
  • Creating a list 500 error

    Creating a list 500 error

    When I create a public list, and returns me to the show page of that list I get a 500 error:

    Next ErrorException: Route [subscriptions.subscribe] not defined.

    In the show.blade.php I commented this and then it worked:

    @if($list->public == true)
        <tr>
            <th>Public link</th>
            <td><input class="form-control" value="{{ route('subscriptions.subscribe', $list) }}"></td>
        </tr>
    @endif
    
    opened by Cannonb4ll 2
  • Missing view: View [subscribe.list] not found

    Missing view: View [subscribe.list] not found

    How to fix this? I figured out how to create an URL to a Mailing-List myself like this (using Demo-Seed): http://test.local/subscribe/1

    But it throws Error 500 and laravel.log indicates this

    production.ERROR: View [subscribe.list] not found. {"userId":1,"email":"[email protected]","exception":"[object] (InvalidArgumentException(code: 0): View [subscribe.list] not found. at /var/www/projects/laravel/laravel-newsletter/public/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:137)
    

    Looks like there is a missing view?

    It would also be great being able to generate/open the link from withing backend and List-View to the frontend URL (as new tab).

    opened by typoworx-de 1
  • Route /home does not exist

    Route /home does not exist

    Code redirect in RedirectIfAuthenticated.php redirects to /home.

    if (Auth::guard($guard)->check()) {
        return redirect('/home');
    }
    

    This route does not exist.

    opened by cruisemaniac 1
  • APP_REGISTER env variable

    APP_REGISTER env variable

    The APP_REGISTER .env variable is nowhere to be found, your readme say's to go to /register but then I get a 404.

    Looking in the source I saw that you have to add a APP_REGISTER to your env to enable registering, but this is not added in de .env.example

    opened by Cannonb4ll 1
  • Cannot rollback migrations

    Cannot rollback migrations

    When I do a php artisan migrate:refresh I get an error:

    [Illuminate\Database\QueryException]
    SQLSTATE[HY000]: General error: 1553 Cannot drop index 'campaigns_template_id_foreign': needed in a foreign key constraint (SQL: alter table `campaigns` drop `template_id`)
    
    [PDOException]
    SQLSTATE[HY000]: General error: 1553 Cannot drop index 'campaigns_template_id_foreign': needed in a foreign key constraint
    
    opened by Cannonb4ll 1
  • Unauthorized Error - New List Unauthorized

    Unauthorized Error - New List Unauthorized

    Hello Nathan,

    Thank you for creating this, very grateful as I was testing it with mysql db and works well. However, I was testing this on SQL Server, and I keep getting an unauthorized error when creating a new list.

    Beforehand, there were some migration errors as well such as below (produced from php artisan migrate, first initial migration):

    SQLSTATE[42000]: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Introducing FOREIGN KEY constraint 'subscriptions_mailing_list_id_foreign' on table 'subscriptions' may ca  
      use cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints. (SQL: alter table "subscriptions" add constrai  
      nt "subscriptions_mailing_list_id_foreign" foreign key ("mailing_list_id") references "mailing_lists" ("id") on delete cascade)  
    

    Any thoughts? I've basically php artisan serve in Windows 10 and connectionstring is to a local sql server developer edition, also laravel 5.7 version since I ran composer install. I'm still looking into the database migration files, if they need some altering or order change for sql server, but would like to hear your input about this issue.

    Thank you.

    Regards, Brian

    opened by brifiction 2
Owner
Nathan Geerinck
Laravel enthusiast.
Nathan Geerinck
Remindle is here to help you remember. Remember everything you want, by the means you prefer, in the frequency you like

platform Personal reminders About Remindle Remindle is a platform which helps you to remember all important events. You can set the means you’d like t

Remindle 4 Dec 23, 2021
This application is a simple application to watch movies like Netflix or DisneyPlus.

Movie Streaming React Web Apps This application is a simple application to watch streaming movies like Netflix or DisneyPlus. The application is built

Adim 2 Sep 25, 2022
Twitter like application made with Laravel in 10 hours. Demo at

Critter, A Twitter like application written with Laravel in under 10 hours by @msurguy Imagine Twitter is down again. It's dark outside, and how can y

Maksim Surguy 58 Nov 30, 2022
Roundcube Webmail is a browser-based multilingual IMAP client with an application-like user interface.

Roundcube Webmail roundcube.net ATTENTION This is just a snapshot from the GIT repository and is NOT A STABLE version of Roundcube. It's not recommend

Roundcube Webmail Project 4.7k Dec 28, 2022
A simple RESTful non-blocking API, to send and receive money

A simple RESTful non-blocking API, to send and receive money.

Daniel Rodrigues 3 Dec 19, 2022
A simple Lumen web app to send basic commands and fetch the current status to your Ford vehicle with Sync 3 enabled

FordPass Access This is a simple Lumen web app to send basic commands and fetch the current status to your Ford vehicle with Sync 3 enabled. Local dev

Sam 4 Nov 21, 2022
A simple website for estimating withdrawal availability over multiple exchanges.

IOTA exchange status FAQs | Installation | Contributing IOTA exchange status is a simple website for tracking the current withdrawal possibility of IO

Brayd 1 Aug 4, 2022
A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations

A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations.

null 3 Sep 22, 2022
Web interface to manage multiple instance of lxd

LXDMosaic ?? Share your feedback ?? More input required ?? Roadmap ??️ Docs ?? Get Started Prepare LXD Setup LXD and ensure LXD is available over the

null 438 Dec 27, 2022
A great looking and easy-to-use photo-management-system you can run on your server, to manage and share photos.

Lychee A great looking and easy-to-use photo-management-system. Since the 1st of April 2018 this project has moved to it's own Organisation (https://g

Tobias Reich 6.2k Jan 5, 2023
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.

Voucher Management System is a web application for manage voucher. You can create and manage your voucher. Voucher Management System is used PHP with Laravel Framework and use MySQL for Database.

Artha Nugraha Jonar 34 Sep 17, 2022
Infopanel is a simple tool getting some information from source. It works basically like a slider that shows only title, image, a little bit description and QR-Code for links.

Infopanel is a simple tool getting some information from source. It works basically like a slider that shows only title, image, a little bit description and QR-Code for links. It has its own GUI for the editing. The GUI provides a very simple role concept. This tool can be used for digital signage, Information panels, News or Events or similar.

null 4 Aug 22, 2022
Rinvex Bookable is a generic resource booking system for Laravel, with the required tools to run your SAAS like services efficiently

Rinvex Bookings is a generic resource booking system for Laravel, with the required tools to run your SAAS like services efficiently. It has a simple architecture, with powerful underlying to afford solid platform for your business.

Rinvex 435 Jan 5, 2023
Updated project with extra Features like WISHLIST, List Orders, add Reviews, updated routing, resolved search bug is available for Premium

Updated project with extra Features like WISHLIST, List Orders, add Reviews, updated routing, resolved search bug is available for Premium Projects We

Franck Thiam 1 Nov 23, 2021
A mini social media like web app built using Laravel 8 & Vue JS 3

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Davidson Ramos 2 Feb 1, 2022
This is a Reddit-like clone named Scroller, made for the project component of COSC 360 - Web Programming.

The COSC 360 Project Due Dates: See Milestone Dates Overview: The project is designed to help develop your skills for full stack development. With thi

null 3 Jun 30, 2022
A tool to manage your families and friends recipes like a chef.

RecipeManager Api and Frontend to Manage your recipes. Written with Laravel and Vue.js. A tool to manage your families and friends recipes like a chef

Suhype 34 Nov 27, 2022
Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi

Browser Administration for Linux-Based Audio/Video-Player like ODROID or Raspberry Pi.

Max2Play 41 Apr 23, 2022