Skip to main content

Setup JodBoard API

Dependencies​

You should have the following versions installed in your local.

Everyone should be using mise as their version manager for things like node, ruby, postgresql, etc.

  • we want everyone's setup to be the same so that we can assist each other easily
  • you should use mise for your personal projects too

Updated 28 April 2025 | application | command | version | | ----------- | -------------------- | ------- | | ruby | ruby --version | 3.4.3 | | rails | rails --version | 8.0.2 | | bundler | bundle --version | 2.6.8 | | ruby gems | gem -v | 3.6.8 | | postgresql | postgres --version | 17.4 |

Ruby installation​

Postgresql Installation​

todo

Setting up project​

# 1. Navigate to your local folder where you want to clone
# I have a folder ~/jod/repo for all jod codebases
cd ~/jod/repo

# 2. Pull latest [`jodapp-api`](https://github.com/jod-app/jodapp-api)
# NOTE: if you added Host github.com-jod in your .ssh/config, you should use git@github.com-jod:jod-app/jodapp-api.git
git clone git@github.com:jod-app/jodapp-api.git

# 3. install dependencies
cd jodapp-api
bundle install

# 4. Initialise your local database
# - ensure you have installed postgresql 17.4 on your local
rails db:create

# run migrations
rails db:migrate

Install gems​

Ali's Installation Notes (skip)​

You can skip this

  1. Install ruby 3.4.3

using asdf

# update asdf plugin to get latest ruby versions
asdf plugin update ruby

# install ruby 3.4.3
asdf install ruby 3.4.3

# verify ruby version
ruby --version
#=> 3.4.3
  1. Update ruby gems to latest
gem update --system

# verify gem version
gem -v
#=> 3.6.8
  1. Install Rails 8.0.2
gem install rails -v 8.0.2
  1. Verify rails version
rails -v
# Rails 8.0.2

Sorbet IDE Setup​

  1. Install sorbet vscode extension
  2. Install byesig vscode extension
  3. Update byesig opacity to 0.3 (or a value you like)
    • The idea behind this is to prevent visual litter on the codebase with type definitions
    • CMD + P > Preferences: Open user settings > Search for byesig > update opacity value

Replace Postman with Bruno​

Everyone will use Bruno as our API client.

Download the desktop app. Download the vscode extension.

Open the desktop app. Load the folder jodapp-api/docs/api

You can make edits directly to the .bru file in the project, but to execute the http request, you will need to use the desktop app.