Skip to content

exercism/elixir

Folders and files

NameName
Last commit message
Last commit date
Jun 11, 2021
Jan 6, 2025
Jul 12, 2024
Jan 6, 2025
Nov 3, 2021
Oct 14, 2024
Feb 12, 2025
Jun 7, 2022
May 21, 2021
Mar 4, 2024
Mar 24, 2022
Jul 2, 2024
Mar 1, 2021
Mar 1, 2021
Feb 3, 2024
Dec 9, 2024
Sep 25, 2021
Jul 2, 2021
Jan 6, 2025
Jul 2, 2024
Mar 4, 2024
Mar 4, 2024

Repository files navigation

Exercism Elixir Track

GitHub branch checks state GitHub contributors GitHub commit activity

Exercism Exercises in Elixir

Setup

The exercises currently target Elixir versions from 1.14 to 1.18 and Erlang/OTP versions from 25 to 27. Detailed installation instructions can be found at https://elixir-lang.org/install.html. We recommend using the asdf version manager to manage multiple Elixir versions.

Testing


It is recommended to test BEFORE submitting a PR. It will test your submission, ensure that the repository builds as a whole, and help guard against unintentional, unrelated changes.


Test Exercises

To test all of the exercises against their example solution, you can run bin/test_exercises.sh:

$ ./bin/test_exercises.sh
Testing: accumulate Pass
Testing: acronym Pass
...
Testing: zipper Pass
--------------------------------------------------------------------------------
93/93 tests passed.

This will take some time.

To only test some exercises, run:

$ ./bin/test_exercises.sh word-count zebra-puzzle
Testing: word-count Pass
Testing: zebra-puzzle Pass
--------------------------------------------------------------------------------
2/2 tests passed.

Dialyzer

To run dialyzer on all exercises, run ./bin/dialyzer_check.sh. It might take a really long time the first time you run it. It will also be run for you by Github Actions as part of the PR check.

Code and document formatting

To check formatting of all exercises and all documents, run ./bin/check_formatting.sh. It will also be run for you by Github Actions as part of the PR check.

Track linting

configlet is an Exercism-wide tool for working with tracks. You can download it by running:

$ ./bin/fetch-configlet

Run its lint command to verify if all exercises have all the necessary files and if config files are correct:

$ ./bin/configlet lint

The `exercises.practice.slug` value is `transpose ๐Ÿ™‚`, but it must be a lowercase and kebab-case string:
/Users/angelika/Documents/exercism/elixir/config.json

Configlet detected at least one problem.
For more information on resolving the problems, please see the documentation:
https://github.com/exercism/docs/blob/main/building/configlet/lint.md

Contributing Guide

If you want to help maintain the Elixir track, take a look at HELLO.md. You will find there an introduction to all the possible ways you can help us.

If you want to contribute to this repository specifically, please see CONTRIBUTING.md.