Skip to content

IciaCarroBarallobre/elixir_wordle

Repository files navigation

Elixir Wordle

You can see the deployment result of main branch on:

ElixirWordle

GitHub version

Table of contents

  1. Game description 🎲
  2. Running the game & tools used ⚒️
  3. Design Info 📋
  4. Contributing 💬
  5. Contributors 👥

Game description

Elixir Wordle is a game that can be played on the web, where players aim to guess a word related to Elixir programming language.

Every day, a random word is chosen, and players are given the word's length, a clue, and six chances to guess the word. After each guess, players receive feedback to help them narrow down the possibilities and make a more informed guess.

Example:

  • Incorrect letters are displayed in gray (⬜).
  • Correct letters in yellow (🟨).
  • Correctly placed letters in green (🟩).
CLUE: "Datatype"

⬜⬜⬜⬜⬜ length(word) => 5 
⬜🟨⬜⬜🟨 Trying... 'FLOAT' => Now you know that contains 'L' and 'T'.
🟨⬜⬜🟨⬜ Trying... 'LISTS'
🟩⬜⬜🟨⬜ Trying... 'TREES' => Now you know the word starts with 'T'.
🟩🟩🟩🟩🟩 Trying... 'TUPLE' => You got it!

Running the project

Prerequisites: Elixir 1.14.1, Erlang/OTP 25.1, PostgreSQL.

  1. Clone the repo: git clone [email protected]:IciaCarroBarallobre/elixir_wordle.git
  2. Install dependencies: mix deps.get.
  3. Configure DB, creation and migration: mix ecto.setup.
  4. Start Phoenix endpoint mix phx.server or iex -S mix phx.server(inside IEx).
  5. Visit localhost:4000.

Tools used

Postgres Phoenix Wallaby

The following tools were used in the development of this project:

  • Phoenix: an open-source web development framework written in the Elixir programming language.
  • PostgreSQL: a free and open-source relational database management system (RDBMS) emphasizing extensibility and SQL compliance.
  • Wallaby: our end-to-end testing tool, which also allows us to take responsive screenshots. By default, test configuration excludes wallaby tests. To run only Wallaby tests, use the following command:
mix test --only wallaby

Design Info

For additional documentation about the design like:

  • Mockups 📱
  • Flow diagram 📊
  • Sequence diagram 📊

Contributing

💬 We value your contributions to this project. If you have suggestions for new features or encounter any bugs, please open an issue or fork the project and then submit a pull request.

GitHub issues GitHub issues by-label

GitHub forks

Contributors

👥 This project was started thanks to the hack-a-thing session organized by Elixir Newbie. Many people from this same group (like @gcavanunez or @julioucla) have contributed after this session to it with commits, PR reviews, etc. So I am extremely grateful to all of them. 💜

About

Elixir Wordle Web App featuring daily words related to Elixir.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published