/elixir-companies

A list of companies currently using Elixir in production.

Primary LanguageElixirMIT LicenseMIT

Elixir Companies

Elixir Companies

A collection of companies using Elixir in production.

Proudly built with Phoenix.

Adding a new company to the list

  • Sign with your GitHub account.
  • Click on Add a company button and you will be redirected to a form.
  • Fill all required data about the company and submit it.

After that, the admin needs to validate the request.

With everything OK the company will be approved and will appear in companies list.

Adding a new job opportunity for a company

Once your company is available on the list, you are able to add a new Job opportunity for the given company.

  • Sign with your GitHub account.
  • Click on + Add a Job link and you will be redirected to a form.
  • Fill all required data about the company and submit it.

Development

  1. Install dependencies with mix deps.get
  2. Create and migrate your database with mix ecto.setup
  3. Install Node.js dependencies with cd assets && npm install
  4. Start Phoenix endpoint with mix phx.server

Now you can visit localhost:4000 from your browser.

Note: You need to set up a GitHub Application and ensure GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET are available to your application. The GitHub application needs its callback set to http://localhost:4000/auth/github/callback and be given read-only access to the email addresses of the user.

Note: You need to have Postgres version 9.5+, due to our use of certain features that are fairly new (JSONB Data Type + ON CONFLICT query).

Note: If for some reason you reset the database on your machine, you will see an error as the browser has cookies for a user that does not exist in the database. You will need to clear the cookies and site data for the page on your browser and refresh the page to remove the error.

Localization

In order to add a new language to the available list of locales, you have to do the following:

  • mix gettext.extract in order to extract all the latest gettext msgids from the code
  • mix gettext.merge --priv/gettext in order to merge the latest msgids with the locales.
  • mix gettext.merge --priv/gettext --locale locale_code in order the generate the files for the new locale.
  • Edit the default.po and errors.po in the priv/gettext/{locale_code}/LC_MESSAGES/ dir. You leave the msgids intact and only touch the msgstr fields, where you translate the text accordingly.