Live at: https://mailsender.dev
A web app that allows people to manage email contact lists, send bulk, customised emails from their own Gmail account, track responses and send follow-up emails.
- Login/sign up flow with e-mail address
- Authorize with Gmail
- Create new email template with variables
- Upload a sales list in csv or input via form
- Review emails before they get sent
- Hit a button to send out all of the emails
- Track replies in dashboard
- Send follow-up emails
Airen Surzyn, Danny Ngo, Darren Greenfield
-
Clone the repository from gitHub:
git clone https://github.com/hatchways/team-marinara.git -
Run
npm initfrom the/serverand/clientdirectories to install required packages.
-
If you do not have mongoDB installed, install mongoDB Community Edition on your machine by following the instructions here
-
Create a database directory at
/server/database. This will hold the database files and should not be committed to git as it will be a 300MB+ directory.
- If you do not have Redis installed, download it from here or run
brew install redison mac
-
Run
npm run devfrom the/serverdirectory. This will start the mongoDB server, the Redis server and the app server -
Run
npm startfrom the/clientdirectory. This will start the React front-end app.
- Run
npm stopfrom the/serverdirectory to stop the mongoDB and Redis servers
-
Download and install Google Cloud SDK following the instructions here including running
gcloud initand logging in with your Google credentials -
Ensure you have the
env_variables.yamlfile in /server/config/ (this contains API keys and should not be commited to git)
- app.yaml contains gcloud deployment settings
- The MongoDB database can be accessed at cloud.mongodb.com The project is called Mail Sender.
- The project is hosted on GCP App Engine and can be managed at console.cloud.google.com. The project is called Mail Sender
- The Redis database can be accessed at app.redislabs.com
-
Run
npm buildfrom the /client directory to build the prodution React app -
Ensure package.json in the project root contains all server dependencies. App Engine uses the package.json file in the project root directory to install dependencies in the hosting container and starts the server with the
npm startscript in this file. -
Deploy the app by running
gcloud app deployfrom the app's parent folder. This will update the app deployed at mailsender.dev



