Stand up the app (legacy or greenfield)
- Due Feb 14 by 11:59pm
- Points 0
- Submitting a text entry box
Both legacy and new: get the following tasks working, you're free to use LLMs but please be prepared to tell the rest of us how well they helped, what prompts you used, etc.
When you find something interesting, post to the Ed forums so other students can benefit! Did you find a neat tool to help understand the code base? A particularly effective (or ineffective) prompt that you used to get an LLM to help you out with a configuration problem or code-writing?
- `rake cucumber` and `rake rspec` work; if tests fail, some understanding of why
- Fix up README: include your team members' names, CI badge from GitHub Actions (see below), CodeClimate Maintainability badge with test coverage badge (see below); clean up any unclear language about how to stand up the app; use the wiki for such hints, and the README for general info about the app. For the CI, coverage, etc. badges, rather than modifying the badges in the README that apply to the "golden" repo, insert a section above it with the code specific to your team's badges on the repo fork.
- use an LLM to get a handle on the codebase: what are the important models? If you've met with your customer and derived some of the design, can an LLM help identify the likely changepoints? Can it tell you which unit tests or integration (Cucumber) tests are most important, what entities appear in the largest number of them, etc.? Note that there are tools out there that "feed" your codebase to an LLM for context.
New (greenfield) app:
- Create app on Rails 8 with `rails new` and overriding some defaults: no `Test::Unit` (we'll use RSpec instead)
- if need help getting app setup, did you use LLMs and did it help? what prompts did you start with and which ones did you end up with?
- install and initialize Rspec and Cucumber; create one "trivial" test in each
Both legacy and greenfield;
- Locally, everyone can clone the repo, run migrations, and successfully start the app with `rails server`
- `rake cucumber` and `rake rspec` work without errors; i errors, some understanding of why, and plans for remediation
- GitHub Actions configured to run Cucumber and RSpec in CI on each push; badge in README
- CodeClimate Maintainability linked to repo, badge shown in README
- SimpleCov test coverage enabled in app, with CodeClimate creating the coverage badge that goes in the README
- Successful deploy to Heroku so that you can at least view the app's home page and perhaps successfully hit a few of the routes
- Add the free tier of New Relic APM (App Performance Monitoring) on Heroku (under "Resources" after you deploy your app)
- (Highly recommended) install and configure FactoryBot if it isn't already—you'll need it for your tests.