Phoenix and VueJs | Kick Start (Part I)

Phoenix and VueJs | Kick Start (Part I)

Prerequisites

First off, understand the fundamentals of VueJS, ES6, and the basic build of a VueJs application (NPM, Webpack, Babel).

What to Expect

As the title implies, Phoenix is a web framework for writing backend (server-side) code that provides an alternative to Node.js backend frameworks. Phoenix is built upon a language called Elixir while Node.js is built upon JavaScript.

I’ll go into more detail about the differences in a just a moment, however, I want to make it clear from the start that this book will be written for people already familiar with full-stack JavaScript development to transition to developing with Elixir/Phoenix (and not vice versa).

Another important thing to note is that this book is being written as I learn Elixir/Phoenix with no prior experience. Therefore, this book will be super practical. Reason being, when I have those “a-ha” moments where something clicks, I can explain to you exactly what made it click for me. I will also be using stories, analogies, and visual-friendly examples to reiterate what I am learning.

Why Learn Phoenix

It’s very likely that you may not have heard of Phoenix. Unlike Vue.js, and other topics that I have covered, Phoenix has a lot less “buzz” surrounding it.

Why I’m Leaning Phoenix

Here were some ideas I contemplated, becase Erlang or Erlixing is more deffensive than other.

Why Phoenix is Technically Legit

As previously mentioned, Phoenix is built off of Elixir and the Erlang VM. A couple things to note in regards to this.

  • Elixir provides a stronger type system than JavaScript (Node.js) without needing preprocessing like with TypeScript.

  • Elixir is a functional programming language at its core and not merely a language that gives you the option to do functional stuff like JavaScript. Functional programming will be unpacked more in the next chapter. However, just know that we can write less code and have a better understanding of what our code does since it is also declarative:

Elixir School

  • Elixir has performed incredibly well in comparison to Express (Node.js framework) and frameworks for other languages:

Comparative Benchmark Numbers @ Rackspace

  • Erlang VM (BEAM) has been developed on for over 25 years and the result is better stability and concurrency.

Beyond that, I recommend checking out the official site and the sample chapter of Programming Phoenix.

Fun Fact:Discord has been using Elixir to scale their applications.

Whether the technical details mean anything to you or not, I’d still encourage you to learn how to build a Phoenix backend for VueJs applications as you will learn a secondary programing language, functional programming skills, how to create a PostgreSQL database and API service, and other cool skills with backend development.

Table of Contents

  1. Kick Start (Part I)

  2. Back Basic

  3. Phoenix Framework

  4. VueJs as a Frontend

  5. Integrate using postgre

  6. Building a WEB API Service connecting with postgreSql

  7. CRUD Operations

  8. User Authentication

  9. Channels

  10. Moving Forward

  11. Docker

  12. Kubernetes

  13. CI/CD