I'm currently working on an application for my summer camp. I've been working on it for a little while now and after learning a ton of new skills I've come up with the above development and deployment process diagram. Solid lines denote code 'flow'. For example, code will be pushed from local development to the Github repos. Serrated lines denote code 'communication', i.e. the client makes requests to the API. Yellow objects are local instances. Blue are Github repositories. Green are Heroku deployments. And Red is Amazon Web Services deployments. I'm using Heroku a pipeline for the Client Staging->Production flow. Finally, Travis CI is integrated through the Client and API deployment process.
I'd love to receive some feedback about this process and answer any questions other developers might have.