Skip to content
impulseDOCS
Get Started

Build with Rails

Create a project (quickstart), open the Connect tab, and copy your .env. Then wire it up:

Rails reads DATABASE_URL natively — set the adapter and go:

config/database.yml
production:
url: <%= ENV["DATABASE_URL"] %>
config/storage.yml
impulse:
service: S3
endpoint: <%= ENV["S3_ENDPOINT"] %>
access_key_id: <%= ENV["S3_ACCESS_KEY"] %>
secret_access_key: <%= ENV["S3_SECRET_KEY"] %>
region: us-central-1
bucket: my-app
force_path_style: true
config/environments/production.rb
config.active_storage.service = :impulse
config.cache_store = :redis_cache_store, { url: ENV["REDIS_URL"] }
# Sidekiq
Sidekiq.configure_server { |c| c.redis = { url: ENV["REDIS_URL"] } }

Devise for classic session auth, or verify ImpulseAuth JWTs on your API with the jwt gem against your JWKS (details).

Puma behind Nginx on a Cloud VPS — systemd units for Puma and Sidekiq, credentials from the project .env.