# And Now For Starting Again with Elixir and Phoenix Not Elm

DevFeed: [And Now For Starting Again with Elixir and Phoenix Not Elm](<https://devfeed.tech/articles/and-now-for-starting-again-with-elixir-and-phoenix-not-elm-28163.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/elixir/2022/04/01/and-now-for-starting-again-with-elixir-not-elm.html>)

Author: Fuzzygroup

Published: 2022-04-01T15:57:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Elixir](<https://devfeed.tech/topics/elixir.md>), [phoenix](<https://devfeed.tech/topics/phoenix.md>), [Elm](<https://devfeed.tech/topics/elm.md>), [Laravel](<https://devfeed.tech/topics/laravel.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Processes](<https://devfeed.tech/topics/processes.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [elm](<https://devfeed.tech/tags/elm.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [phoenix](<https://devfeed.tech/tags/phoenix.md>)

## AI overview

The author sets aside Elm after finding a simple HTML form frustrating to implement and experiments with moving a Laravel application to Elixir and Phoenix. The article documents updating Elixir on macOS, installing Phoenix, generating a Phoenix application with MySQL, configuring the database, and adapting migrations for an existing schema.

## Source excerpt

In my last blog post, I dug into Elm and while I like a number of things conceptually about Elm, the process of implementing nothing more than a maybe 8 element HTML form left me hugely frustrated and annoyed. I also didn't like the way that Elm bundles code and display into one thing. I may be a traditionalist perhaps but the separation of views and code really does work well in practice. I get that Elm is a different thing but it shouldn't be this hard to just put some text and an html form on the screen. And, so, I'm putting Elm to the side for a bit and going to experiment with using Elixir and Phoenix for my previous Laravel application. If nothing else this should be much more straightforward as it is moving from one MVC style framework to another albeit from an OO lang (php) to a functional lang (elixir). Step 1: Getting Up To Date I'm on OSX and my goal was to get to the current Elixir and Phoenix before I started, This I found to be surprisingly problematic. And, perhaps, it was my fault as I don't claim to be great with HomeBrew. I started with: brew update brew install elixir@1.12 But no matter what I did, I couldn't get past elixir 1.11. So my next step was to get rid of everything. Getting Rid of Everything I started with: brew uninstall elixir And then I got a warning about a shallow copy issue which told me to run: git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow brew update brew install elixir which finally resulted in: ❯ elixir -v Erlang/OTP 24 [erts-12.3.1] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [jit] [dtrace] Elixir 1.13.3 (compiled with Erlang/OTP 24) Installing Phoenix A bit of googling gave me this command to install the newest Phoenix: mix archive.install hex phx_new Step 2: Generating a New App Although I've actually been to ElixirCon, things have changed a lot in a few years. Here's the new syntax for generating an app: mix phx.new kit_selector3 --database mysql Normally I'd be using pos