PJUllrich

PJUllrich

Author of Building Table Views with Phoenix LiveView

Build an MVP with Elixir

Now available on Gumroad

Hi folks! Peter Ullrich here :slight_smile:

I’m happy to announce my very first video course called Build an MVP with Elixir! :partying_face:

This course teaches you how to quickly develop a real-world product and to make it available it to the world. Together, we will create a real-world application called blogcash.app using Phoenix LiveView, deploy it to Fly.io, add payments to it using LemonSqueezy, and much more. You will learn everything you need to build your own product and to get paid for it!

The course is meant for new developers and developers new to Elixir, but it’s also useful for experienced developers who want to release their own product.

Main topics of the Course

In 27 videos with a total length of 6.5 hours, we will cover the following topics and more:

  1. Set up your Local Development Environment
    1. Install Elixir and Erlang using Homebrew and asdf
    2. Install VSCode Extensions for Elixir
    3. Use Docker Compose for running a Postgres Database
  2. Create your first Phoenix Application and:
    1. Add User Authentication
    2. Add a Checkout with LemonSqueezy
    3. Use Tailwind and TailwindUI for rapid prototyping
    4. Use ChatGPT to add content
    5. Hack and secure your app using Burpsuite
    6. Add free illustrations from DrawKit and undraw
  3. Deploy your product to Fly.io with:
    1. a custom Domain
    2. User Analytics with Plausible.io
    3. a Mailing Service using Mailgun
    4. a Continuous Deployment Pipeline from GitHub
  4. Learn just enough theory about Phoenix and LiveView to get you started. We will cover:
    1. How does Phoenix handle a Request from top to bottom?
    2. How does LiveView update the website without reloading?
    3. How does the Phoenix folder structure work?

Aside from these topics, you will also learn the basics of writing Elixir code, how to add your own pages to your application, how to add custom CSS, and more.

After this course, you’ll have all the tools to build your own product!

Who am I?

I am Peter Ullrich. I’ve been working with Elixir for more than 4 years now and love sharing my Elixir knowledge through my blog, YouTube Channel, Twitter Account, on Podcasts, or at major Conferences.

Why this course?

I love Elixir, but believe that it’s not easy to get started with it. I learn best by doing, so I created this course to teach newcomers just enough Elixir and LiveView to get them started using a real-world example. After this course, I believe that you know enough Elixir to continue your learning journey on your own. If you just got an Elixir job (congrats!), this course will help you to hit the ground running :flexed_biceps:

For whom is this course?

New Developers.
You will learn everything you need to know to build your first Elixir application on your own.

Developers new to Elixir.
This course teaches you the basics and will get you up to speed with Elixir. If you just accepted an Elixir job, this course will allow you to hit the ground running!

All Developers who want to release a product.
If you’re experienced with Elixir, but don’t know how to deploy your application and get paid by your users, this course is for you too!

What does the course not do?

This course explains some basic theory of how Phoenix and LiveView work, but it is not a technical deep dive into Elixir, Phoenix, or Phoenix LiveView. It gives you recommendations for further readings though, in case you want to learn more.

Course Materials

As part of this course, you will have access to the following:

  1. 27 Videos of 6.5 hours total length
  2. The code of the more extensive demo project: blogcash.app
  3. The final code of the project that we’re building together: cashblog.app
  4. 8 intermediate code versions of cashblog.app to make it easier to follow along
  5. A support document with code snippets and further resources

Where can I buy it?

The course is now available on Gumroad :slight_smile: See you there!

Most Liked

Fl4m3Ph03n1x

Fl4m3Ph03n1x

Hello all,

TL;DR

I finally finished the course. The full thing.
My opinion of the course if very positive. In the end, I did end up with an MVP, its not the most beautiful thing in the world (still learning tailwind), but it does the job.

I can honestly say, I totally recommend this. You will learn a ton, even if you are not new to Elixir (my case).

Favorite Parts

I must say, the topic that I liked the most was the author’s knowledge of free resources, such as undraw, tailwindUI (free version) or heroicon.

The topic where I learned the most was definitely with the payment section with LemonSqueezy and Ngrok. Turns out the courses uses a bunch of auxiliary tools. I am not sure if it possible for 1 person to be proficient in all of them, but the basic knowledge we are given sure goes a long way.

Extra things I would have liked

I would have liked some additional homework/exercises, but this is honestly something very minor.
The author also mentions alternatives to some of the tools, for example, GumRoad instead of LemonSqueezy, which I would have liked to know more about (specially because they adapt the price of the course to your country). In fact, if not for GumRoad’s price adaptation, I would have been able to buy the course.

Some insight into testing would have also been interesting, as it is obvious Peter is very knowledge.

I understand however this would have inflated the course’s runtime, but here is food for thought (maybe next time? :smiley: )

Extra selling point

I will say I encountered several difficulties. For example, I never managed to get one of the tools, ElephantSQL working properly. You may think this is bad, but I am telling you this because this prompts up another important selling point: Peter Ulrich.

Upon sending a PM, he was extremely helpful, and suggested another solution to replace ElephantSQL, Supabase, which I am now using and I am very happy with.

Peter is very friendly and helped me when I asked, this is something I cannot say of everyone (sometimes authors do not have the time to help customers) but the fact Peter made the effort is a strong selling point for me.

pillaiindu

pillaiindu

I enthusiastically endorse this course as a great learning resource for Elixir and Phoenix!
Not only does it cover all the essential topics required to build a real project, but it also explains them well. I was fortunate to be one of the initial subscribers, and while I haven’t completed the course yet, I can confidently say it is one of the most comprehensive and insightful resources I’ve come across.
I wish the very talented Peter Ullrich all the best of luck!

marcelfahle

marcelfahle

Congrats on the launch Peter! I’ve already bought it and like it very much so far. Great job!!

sjm

sjm

Hey Peter, congrates on the launch! Bought it a couple of days ago and really loving the content and videos so far. Really good job!

PJUllrich

PJUllrich

Author of Building Table Views with Phoenix LiveView

Yes, both the Demo project and the project we build together use Phoenix 1.7 and LiveView 0.18 :slight_smile:

Where Next?

Popular in Courses Top

kokolegorille
Hello everyone, I just find a new course that might interest some people. It was just published a few days ago. I am not related in any...
New
DmytroNasyrov
Hey folks! A brand new course about distributed systems and microservices. The course is recorded based on my offline lectures for stude...
New
arrowsmith
Hi, I’m George Arrowsmith - you may remember me from such educational Elixir content as Learn Phoenix LiveView, Phoenix on Rails, and Ma...
New
snake117
Just saw this video by Derek Banas. He covers the basics of Elixir in a one hour video.
New
CodeSync
If you’re joining us for Code BEAM Europe, you can enhance your experience with specialized training sessions. With small groups and the...
New
Cruz
Hello Everyone, Early access to the " Full-Stack GraphQL with Absinthe, Phoenix, and React" video course is now available on the Pragmat...
New
caike
Hey, friends :waving_hand: I’ve recently published a new Elixir course called Phoenix LiveView: The Big Picture in partnership with Plur...
New
CharlesIrvine
Elixir AI Tools is a course providing a survey of Elixir AI tools and frameworks. It provides a fairly in depth introduction to each topi...
#ai
New
AstonJ
Grox.io looks really nice and I love that they’re doing a Joe Armstrong tribute :heart: Bruce Tate (@redrapids) has put together a team ...
New
ElixirCasts
Love LiveView and games? I’ve published a new tutorial where we build a clone of the popular word guessing game, Wordle with Phoenix Liv...
New

Other popular topics Top

lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1140 51847 244
New
sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
977 41022 311
New
srinivasu
How to handle excepions in elixir? Suppose i have A, B, C ,D, E modules. and each module has get() function. A.get() method will call th...
New
dotdotdotPaul
Okay, I'm having a heck of a time trying to figure out how to best handle the validation of belongs_to associations in Ecto. I'm sure I'...
New
albydarned
Hello all! I am typing this post from my new MacBook Pro with the M1 chip. I’m loving it so far, and will probably use it as my daily dr...
New
sergio
I couldn’t find any guides that worked well with Phoenix 1.6.0 and esbuild. I hope this helps people test the waters and eases you into t...
New
chrismccord
As promised, the first release candidate of Phoenix 1.3.0 is out! This release focuses on code generators with improved project structure...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New

We're in Beta

About us Mission Statement