Up to now, we’ve been focusing on our application’s presentation layer with views and templates, and controlling those views with controllers. Our backend uses a simple in-memory repository instead of a real database. There’s a method to our madness, though. That repository uses the same API as Ecto, the Elixir framework for persistence. In this chapter, we’ll convert our application to use a real Ecto repository backed by a Postgres database. By the time you’re done, your repository will be able to save users and search for them using an advanced query API.