Web application
Anki Books is a web application: it mediates communication between the user's web browser (as the user interacts with a website) and a database. At the time of writing, the Ruby on Rails application runs on the same physical computer (a laptop running Linux) as the PostgreSQL database. The app has a connection string (details like database name, user/role to connect as, and password) to send SQL statements to the database to retrieve data, insert new data, update data, and delete data. With the Ruby on Rails framework, SQL statements do not have to be written directly. The object-relational mapping that is part of Ruby on Rails, Active Record, allows the database interactions to be described using Ruby. Ruby on Rails also supports the idea of migrations which are ways of updating the schema of the database (what tables and columns are in the database) without using SQL scripts as well.
What happens when ankibooks.io is entered in the web browser address bar?
It's a common interview question to ask something like this: what happens when I visit google.com? To visit a website, a user can type the URL of the website into the address bar of their web browser. This is virtually equivalent to clicking a link to that URL from a different website such as the Google results page given after googling the website name.
URL
A URL is a locator for a physical resource (it is a type of URI). It includes a scheme, a ://, a domain name, a port, a /, a path that may include literal segments and segment variables, a query string parameter, and other data as well. http and https are examples of schemes. :// separates the scheme from the domain name.
Domain name
A domain name is a human-readable alias for an IP address, which identifies a computer connected to the Internet. The domain name is just part of the entire URL, but it is important to understand that it carries the meaning of identifying a host computer. The domain name can be resolved to a real IP address through the Domain Name System (DNS). One of the things that the browser does under the hood when a URL is entered into the address bar is resolving the IP address by asking the DNS. The DNS is a distributed network of databases that store records tracking what IP addresses are aliased by the domain names.
A user is able to visit the website by visiting the URL of the website with their web browser (by typing it in the address bar or clicking a link to it). The part of the URL called the domain name (ankibooks.io in this case) is an alias for an IP address identifying a host computer. When you visit the URL, the web browser sends an HTTP request on your behalf to that host computer. Skipping over a lot of detail for now, the HTTP request reaches the host computer identified by the IP address. On that host computer is a process listening for exactly that type of request, a web server. A web server might just serve up a static website (but this would not typically be described as a web application). Anki Books is a Ruby on Rails web application. The web server sends the request to the Ruby on Rails application logic, which can do many different things to respond to that request. A common thing the Ruby on Rails application logic will do is to ask the database for some data, and then compile some front-end code (a website) using that data and some code. The website it compiles is then passed back to the web server which then sends it back to your web browser which presents it to you in a usable way.
In general, the application logic can respond to HTTP requests by doing many different things. It might communicate with other servers by sending HTTP requests itself, it might send jobs to do some work asynchronously, it might send emails, it might invoke a machine learning model, it might create a zip file that imports into some other program and send it to the user as a download. The final result is not always sending a website or download back to the user. The result could be a response indicating that it should go somewhere else because the content has been moved, or it might just respond with a status code saying the request was malformed.
The web is a great platform for applications that are easy for people to use without needing to install anything. Pretty much everyone who would use your software knows how to use a web browser on their phone already. There is the disadvantage that an Internet connection is needed.