An event planning website for FFXIV.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
liv 1849f7ae34 fix: bump docker elixir version 2 months ago
assets fix: add dragoon to role selection 9 months ago
config fix: show parties with no members 1 year ago
lib chore: change IGN 2 months ago
priv feat: add separate admin team perm level 9 months ago
rel feat: add deploy files 2 years ago
test chore: mix format 1 year ago
.credo.exs feat: add and follow credo 2 years ago
.dockerignore fix: fix deployment 2 years ago
.editorconfig wip: add new table 1 year ago
.formatter.exs initial phoenix commit 2 years ago
.gitignore feat: support reassigning parties 1 year ago doc: add basic 1 year ago feat: add role explainer 9 months ago
Dockerfile fix: bump docker elixir version 2 months ago
LICENSE feat: adjust relative time formatter 1 year ago docs: rewrite installation section 2 years ago
fly.stage.toml chore: fix staging env 1 year ago
fly.toml chore: adjust infra for staging deploy 1 year ago
mix.exs chore: bump version 9 months ago
mix.lock test: fix accounts tests 1 year ago
package-lock.json fix: show all roles for role selection 9 months ago
package.json fix: show all roles for role selection 9 months ago


Fernehalwes (Ferne for short) is a website that helps people host events in FFXIV.

Local Setup

Once you've cloned this repository, you want to make sure you've got Elixir installed. You also need a PostgreSQL version 11+ database server running somewhere. For the frontend, you need Node.js, as well. Preferably a recent version.

The first step is to install dependencies, using mix deps.get. This may prompt you to install something called Hex, that's okay. Then, install the local dependencies for the frontend using npm install or npm ci (that's faster).

Check the config/dev.exs file to set your local database credentials. By default, it uses socket auth, meaning that it relies on the default PostgreSQL config that local clients get passwordless access. If that's different for you, add a password key. Make sure to never check in these changes, since they're local to you.

Now you can set up your database! There's a shortcut task for this: mix ecto.setup. This creates and runs migrations on your database.

You should be ready for running Fernehalwes locally now. There's two main commands to do this:

  • mix phx.server: This is your standard "run the app" command.
  • iex -S mix phx.server: This does run the previous command, but it also gives you a neat interactive console (think rails console) so you can mess around with stuff. This is what I personally use, and I'd recommend it.

Fernehalwes is available locally on https://localhost:4000. Both commands automatically (re)compile assets. In development, no email provider is set up, so you can use the local mailbox at https://localhost:4000/dev/mailbox to catch emails sent to any address.