Getting Started

Use Supabase with Ruby on Rails

Learn how to create a Rails project and connect it to your Supabase Postgres database.


1

Create a Rails Project

Make sure your Ruby and Rails versions are up to date, then use rails new to scaffold a new Rails project. Use the -d=postgresql flag to set it up for Postgres.

Go to the Rails docs for more details.

Terminal

_10
rails new blog -d=postgresql

2

Set up the Postgres connection details

Go to database.new and create a new Supabase project. Save your database password securely.

When your project is up and running, navigate to the database settings to find the URI connection string. Make sure Use connection pooling is checked and Session mode is selected. Then copy the URI. Replace the password placeholder with your saved database password.

Terminal

_10
export DATABASE_URL=postgres://postgres.xxxx:password@xxxx.pooler.supabase.com:5432/postgres

3

Create and run a database migration

Rails includes Active Record as the ORM as well as database migration tooling which generates the SQL migration files for you.

Create an example Article model and generate the migration files.

Terminal

_10
bin/rails generate model Article title:string body:text
_10
bin/rails db:migrate

4

Use the Model to interact with the database

You can use the included Rails console to interact with the database. For example, you can create new entries or list all entries in a Model's table.

Terminal

_10
bin/rails console

irb

_10
article = Article.new(title: "Hello Rails", body: "I am on Rails!")
_10
article.save # Saves the entry to the database
_10
_10
Article.all

5

Start the app

Run the development server. Go to http://127.0.0.1:3000 in a browser to see your application running.

Terminal

_10
bin/rails server