The Yardsourcing SendGrid Microservice is a lightweight modular service that consumes SendGrid's email API. It can be hooked into your existing application to send email communications to your users.
This app is currently being used by our backend engine for Yardsourcing, a web application that connects hosts with users looking to rent a yard. The Yardsourcing app is built with service oriented architecture using this Microservice for email (see Project Architecture). It exposes a single API endpoint that triggers an email request.
To explore the full web application, please visit the built out front end application that hooks into this engine and its endpoints.
To set up automatic email confirmation, please visit the Sendgrid microservice.
- Angel Breaux | LinkedIn
- Doug Welchons | LinkedIn
- Dominic Padula | LinkedIn
- Jordan Beck | LinkedIn
- Alexa Morales Smyth | LinkedIn
- Jenny Branham | LinkedIn
- Genevieve Nuebel | LinkedIn
This project was tested with:
- RSpec version 3.10
- Getting Started
- Endpoints
- Project Architecture
- Testing
- How to Contribute
- Roadmap
- Contributors
- Acknowledgments
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
-
Ruby
- The project is built with ruby using ruby version 2.5.3p105, you must install ruby on your local machine first. Please visit the ruby home page to get set up. Please ensure you install the version of ruby noted above.
-
Sendgrid-Ruby Gem
- This gem is included in the Gemfile and will be installed with the repo. However, it is used for the Sendgrid API communication. Please reference their documentation for how this gem interacts with Sendgrid.
- Clone the repo
$ git clone https://github.com/Yardsourcing/yardsourcing-sendgrid
- Bundle Install
$ bundle install
- Start sinatra ruby server
$ bundle exec ruby applicationcontroller.rb
- Set up Environment Variables
- run
bundle exec figaro install - add the below variables to the
config/application.yml
SENDGRID_API_KEY:'<YOU_SENDGRID_API_KEY>' - run
- POST request to send email
- required params:
- to=<recipient_email>
- from=<sender_email>
- subject=<email_subject>
- content=<email_body>
- examples:
- post
http://localhost:4567/mail?to=email@gmail.com&from=myemail@hotmail.com&subject=BDAY BASH&content=You are Invited!
- post
- required params:
- To run the full test suite run the below in your terminal:
$ bundle exec rspec
In the spirit of collaboration, things done together are better than done on our own. If you have any amazing ideas or contributions on how we can improve this API they are greatly appreciated. To contribute:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
See the open issues for a list of proposed features (and known issues). Please open an issue ticket if you see an existing error or bug.
-
See also the list of contributors who participated in this project.
- Our fantastically wizard like Project Manager and Instructor at Turing School of Software and Design:
- Ian Douglas
