This Rails app is the starting point for your live pairing session with TWG. During the session you'll build a small JSON API here, working with your AI/agentic coding tools the way you would on the job. The exercise requirements are shared at the start of the session — your job beforehand is just to make sure your environment is ready.
Read CANDIDATE_INSTRUCTIONS.md for the full briefing — session format, tooling expectations, and what we're looking for. The setup itself is below.
The stack: Ruby 3.3.2 (pinned in .ruby-version) and Rails 7.2, API-only, on SQLite.
With any Ruby version manager (rbenv, asdf, mise, rvm):
rbenv install 3.3.2 # or: asdf install ruby 3.3.2 / mise install ruby@3.3.2
bin/bundle install
bin/rails db:prepare
bin/rails sThen open http://localhost:3000 — you should see the Rails welcome page. That's the core check.
If you'd rather not install Ruby, with Docker Desktop (or any Docker engine) running:
docker compose up --buildThe first build takes a few minutes; then check http://localhost:3000 for the same welcome page.
During the session you'd run app commands in a second terminal through the container:
docker compose exec web bin/rails generate model ...
docker compose exec web bin/rails db:migrateTip for your AI agent: if you work on the Docker path, tell your agent up front to run all app commands via
docker compose exec web ...— it will happily comply, but only if it knows.
Whatever agentic tool you'll use in the session (Claude Code, Cursor, Copilot, Codex CLI, Aider, …) — make sure it's installed, authenticated, and working in this repo. A good smoke test: open the repo and ask your tool to summarize the app's structure. If that works, you're set.
curl, Postman, Insomnia, an .http file — whatever you're comfortable with.
If setup doesn't work within ~30 minutes, stop and email us at [CONTACT EMAIL] — we'll troubleshoot together or arrange an alternative before the session. Environment problems before the session cost you nothing; we just don't want to spend interview time on them.