Skip to content

Latest commit

 

History

History
123 lines (92 loc) · 3.63 KB

File metadata and controls

123 lines (92 loc) · 3.63 KB

🎓 Complete Elixir Course - From Zero to Expert

Welcome to the complete Elixir course! This course will take you from basic concepts to building web applications with Phoenix.

📚 Course Index

  • What is Elixir?
  • Why Elixir?
  • Installing Elixir
  • Interactive Elixir (IEx)
  • Basic syntax
  • Data types and structures
  • Pattern matching
  • Functions and modules
  • Pipe operator
  • Control flow
  • Processes and concurrency
  • Message passing
  • OTP basics
  • GenServer introduction
  • Supervision trees
  • What is Mix?
  • Creating Mix projects
  • Project structure
  • Dependencies with Hex
  • Testing with ExUnit
  • Building a CLI application
  • What is Phoenix Framework?
  • Installing Phoenix
  • Creating your first Phoenix project
  • Understanding MVC in Phoenix
  • Ecto basics
  • Routes and controllers
  • Views and templates
  • Working with databases (Ecto)
  • LiveView basics
  • Real-time features
  • Building a complete web application
  • Progressive exercises
  • Real projects
  • Commented solutions

🚀 How to Use This Course

Option 1: Using Containers (Recommended)

Each module has a pre-configured container environment:

# Build and run the development container
cd containers
podman build -f Dockerfile.dev -t elixir-course-dev .
podman run -it --rm -p 4000:4000 -p 5432:5432 elixir-course-dev

# Or use the multi-service setup
podman-compose up -d

Option 2: Local Development

  1. Read each module in order - The course is designed to be progressive
  2. Practice each example - Run all code in your terminal or IEx
  3. Do the exercises - Practice is fundamental
  4. Get extra practice - Use Exercism's Elixir Track for 90+ exercises with free mentoring
  5. Experiment - Don't be afraid to try variations

📋 Prerequisites

  • Basic programming knowledge (any language)
  • Command line/terminal familiarity
  • Elixir 1.14+ and Erlang/OTP 24+ installed (see Module 1 for installation)
    • Recommended: Use asdf version manager for easy Erlang and Elixir management
  • Willingness to learn 😊

🎯 Course Objective

Upon completing this course, you will be able to:

  • ✅ Write Elixir code confidently
  • ✅ Build Mix projects
  • ✅ Understand concurrent programming
  • ✅ Create web applications with Phoenix
  • ✅ Work with databases using Ecto
  • ✅ Apply functional programming principles

📖 Let's Begin

👉 Go to Module 1: Introduction to Elixir


📚 Reference Guides


💻 Practical Examples

The examples/ directory contains ready-to-run projects:

  1. Simple Mix CLI (examples/01-mix-cli/)
  2. Task Manager API (examples/02-task-api/)
  3. Phoenix Web App (examples/03-phoenix-webapp/)

Teacher: Remember that practice is the key to learning! Don't hesitate to experiment and make mistakes.