Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@
Website, Rails powered!

### Requirements
* Ruby 3.3.5
* node >= 20
* Ruby 4.0.3
* node >= 24
* PSQL >= 14
* Rails 8.0

### Development Setup
Changes should be added via merge request, as `main` has a CI action that deploys on merge. The application relies on a PostgreSQL instance for its database, so make sure to set that up for your local environment.
Changes should be added via pull request, as `main` has a CI action that deploys on merge. The application relies on a PostgreSQL instance for its database, so make sure to set that up for your local environment.

Because we use ActionText, the application does require dependencies for ActiveStorage as well (ie, `libvips`) though these are currently not used.
ActionText is wired up (and pulls in ActiveStorage), so `libvips` is required even though no page currently uses uploads.

The database and storage configurations are provided in a `.sample` file, make sure you copy those and rename them to the correct `.yml` file. These files are git ignored, so you can set up your local environment as needed.

Expand All @@ -24,9 +25,9 @@ The database and storage configurations are provided in a `.sample` file, make s

This should get the application setup and ready to run.

To run the application locally:
1. Run `bin/dev` - this command will watch JS and CSS to rebuild
1. Run `bundle exec rails s` - this command will run the Rails server
To run the application locally, in two separate consoles:
1. Run `bin/dev` - watches and rebuilds JS and CSS (runs `Procfile.dev` via foreman)
1. Run `bin/rails s` - starts the Rails server

### Deploying to Production
This application is deployed via Dockerfile, so changes that will affect dependencies, etc should be reflected in the `Dockerfile`.
Expand Down
10 changes: 8 additions & 2 deletions bin/dev
Original file line number Diff line number Diff line change
@@ -1,2 +1,8 @@
#!/usr/bin/env ruby
exec "./bin/rails", "server", *ARGV
#!/usr/bin/env sh

if ! gem list foreman -i --silent; then
echo "Installing foreman..."
gem install foreman
fi

exec foreman start -f Procfile.dev "$@"
Loading