The project is missing properly maintained, cleanly separated environments, especially :
- A proper development database and seed data
- Development API Keys, these can be hidden from the codebase using the figaro gem
- A staging server running on a different box with an independent DB
- Staging API Keys using the figaro gem again
- The project basically has no unit tests and those which exist are not maintained, it could be too late to start adding tests all over the codebase but it could be good practice to: ** Fix existing tests ** Add tests for future features implemented
- Integration tests using Cucumber/Rspec and Capybara could help reduce the need for manual checks after each deploy
- Add capistrano with a multistage configuration to allow deploying to staging and production
- Run the tests before each deploy