Skip to content

transientBug/transientbug-rails

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
app
 
 
bin
 
 
 
 
 
 
db
 
 
doc
 
 
lib
 
 
log
 
 
 
 
 
 
 
 
 
 
tmp
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

transientBug Rails Project

This is the main server and frontend for the transientBug.ninja bookmarking service.

Build

Setup

General principles:

  • Try to keep it simple, mkay?

Stack:

  • Fly.io for deployments, see the Devops repo for additional infastructure resources and tooling.
  • Setup a redis server using cd redis && fly deploy
    • you'll need to make a password for redis fly secrets set REDIS_PASSWORD=mypassword
  • fly secrets set REDIS_URL=redis://default:mypassword@hostname.fly.dev:6379/0
  • fly secrets set RAILS_MASTER_KEY=(cat config/master.key)
  • fly deploy --build-secret RAILS_MASTER_KEY=(cat config/master.key)
  • flyctl proxy 15432:5432 -a transientbug-rails-db

Backend:

  • Ruby on Rails 7
    • Ruby 3.1.0
    • GoodJob for ActiveJob
  • Postgresql 14+
  • Redis 6+ for cache and session stores

Frontend

  • TailwindCSS
  • Stimulus & Turbo via rollup

Testing

Chrome headless is being setup for the capybara tests, you should install it with something like

brew install chromedriver

Or look into using a helper.

Basics:

  • RSpec is used for tests (eventually, they're a work in progress) deal with it
  • Capybara specs run with chrome-headless
  • GitHub Actions CI runs specs, yard documentation and rubocop