Skip to content
This repository has been archived by the owner on Nov 19, 2024. It is now read-only.

Speak & Spell in Elm. To internalize concepts with practice and Just for fun :)

License

Notifications You must be signed in to change notification settings

andreacfromtheapp/elm_speakandspell

Repository files navigation

Speak & Spell in Elm

My very first attempt at an Elm application, to test my understanding of Elm in Action.

CHANGE OF API UPDATE (20240617)

The Random Word API I used to use for this app is justifiably returning an error and encourages users to deploy their own, most likely because the many requests would cost them money. I cannot justify deploying my own or forcing anyone to do so for this mock app. Thus, I have switched to a different free random word API and refactored the Elm code to adapt to it. The API lacks definition and pronunciation but at least my Speak and Spell app is available and usable. You can find the old/original version with more features on this branch.

Why Speak & Spell?

Because there was potential for a good mix of UI and UX. It seemed like a great starting point to learn and practice. Moreover, I fancied creating a project completely from scratch, as opposed to pre-existing concepts.

Is it a clone?

Being a toy project (no pun intended), this is a limited reproduction:

  1. match the word on the screen
  2. use the commands

No Mystery Word or any other play mode from the original game.

The point of this exercise was to: study, internalize, apply, learn some more, improve skills and code, rinse and repeat. Not to be an 1:1 clone.

Some Background

When I first started this project, I hadn't finished the book yet. In fact, I started creating this project right after finishing Chapter 5: a chapter that covered all the basics up to testing. I needed to internalize the concepts I had learned up to that point, and to make sure I was getting them right.

After improving my skills on Exercism, and doing some more exploring, I have:

  • migrated the project to my template
  • migrated from Elm UI to Tailwind CSS
  • made it fully reponsive to the best of my abilities
  • resumed the book from where I left off: Chapter 6 - Testing
  • wrote all tests for the API and more relevant UI items

With all testing complete, the project fully served its purpose and it is now complete. 🎉 🎉 🎉

Made With

Tooling privided by my own Vite, Elm, and Tailwind CSS, Template. Check it out 😃

Credits & Copyright

Speak & Spell™ is © of Texas Instruments Inc.

The favicon used on the Vercel app is © Gregor Cresnar. Licensed under the Creative Commons CC-BY 3.0.