A newsletter signup is quite a handy application; you can adapt it quite easily to fit most applications without much fuss. It enables you to have a database of subscribers and manage them, editing their settings and removing them from the database should they choose to unsubscribe.

In this tutorial, we will cover:

  • Design and wireframes
  • Creating a database
  • Creating models
  • Creating views
  • Creating controllers
  • Putting it all together


In this project, we will create an application that will allow users to sign up for a newsletter. A form will be displayed, inviting a user to enter their e-mail address, and then it will define a couple of settings to submit that form. It will also let subscribers alter their settings and even unsubscribe entirely.

To create this app, we will create one controller. This will handle all parts of the project: subscribing, editing settings, and unsubscribing.

We’ll create a language file to store text, allowing you to have multiple language support should that be required.

We’ll create all the necessary view files and a model to interface with the database.

However, this app, along with all the others in this book, relies on the basic setup we did in Chapter 1, Introduction and Shared Project Resources. Although you can take large sections of the code and drop it into pretty much any app you might already have, please keep in mind that the setup done in the first chapter acts as a foundation for this chapter.

So, without further ado, let’s get on with it.