Skip to content

Modern job board built with Elixir and Phoenix LiveView. Features real-time CRUD operations for job listings, secure magic link authentication, advanced search, and responsive design for job seekers and employers.

Notifications You must be signed in to change notification settings

MmmarRTha/dev_jobs_elixir

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dev Jobs Elixir

About This Repository

Dev Jobs Elixir is a modern job board application built with Elixir and Phoenix LiveView. It provides a seamless, real-time experience for both job seekers and employers. Users can create, read, update, and delete (CRUD) job listings through a secure authentication system using magic links sent via email. The platform features advanced search capabilities and a responsive, user-friendly interface.

🛠 Technologies Used 👩🏻‍💻

  • Backend: Elixir ⚗️ with Phoenix LiveView for real-time updates
  • Frontend: Tailwind CSS with custom animations and responsive design
  • Database: PostgreSQL with Ecto as ORM
  • Authentication: Secure magic link system via Resend Email API
  • Testing: ExUnit for comprehensive test coverage
  • Build Tool: Mix (Elixir's build tool)
  • Real-time Features: Phoenix PubSub for live updates

🚦 Getting Started

Prerequisites ⚙️

  • Elixir (version 1.12 or higher)
  • Erlang OTP (version 24 or higher)

Installation 🛠️

  1. Clone the repository

    git clone https://github.com/MmmarRTha/dev_jobs_elixir.git
    cd dev_jobs_elixir
  2. Install dependencies

    mix deps.get
  3. Set up the database

    mix ecto.setup
  4. Start the Phoenix server

    mix phx.server
  5. Run tests

    mix test

Visit http://localhost:4000 in your browser to see the application running.

Features & Usage 🚀

Note

For Job Seekers 🔍

  • Real-time Search: Dynamic search functionality for jobs by title, company, or keywords
  • Infinite Scroll: Seamlessly browse through job listings with automatic loading
  • Responsive Design: Optimal viewing experience across all devices

For Employers 💼

  • Secure Authentication: Simple and secure sign-in via magic link email
  • Job Management: Create, edit, and delete job listings with ease
  • Personal Dashboard: Track and manage all your job postings in one place

System Features ⚡

  • Real-time Updates: Instant notifications when new jobs are posted
  • Performance Optimized: Fast loading and smooth interactions
  • Modern UI: Clean, intuitive interface with animations and visual feedback

Getting Started with Development 🛠

System Requirements

# Minimum versions required
Elixir 1.12+
Erlang OTP 24+
PostgreSQL 12+
Node.js 16+ (for asset compilation)

Environment Setup

  1. Clone and install dependencies

    git clone https://github.com/MmmarRTha/dev_jobs_elixir.git
    cd dev_jobs_elixir
    mix deps.get
  2. Configure environment

    • Copy .env.example to .env (if exists)
    • Set up your database credentials
    • Configure your Resend API key for email functionality
  3. Set up the database

    mix ecto.setup   # Creates, migrates, and seeds the database
  4. Start the development server

    mix phx.server   # Starts the Phoenix server

Visit http://localhost:4000 to start using the application locally.

Testing 🧪

Run the test suite with:

mix test                 # Run all tests
mix test --cover        # Run tests with coverage report
mix test.watch         # Run tests in watch mode (requires mix test.watch)

About

Modern job board built with Elixir and Phoenix LiveView. Features real-time CRUD operations for job listings, secure magic link authentication, advanced search, and responsive design for job seekers and employers.

Topics

Resources

Stars

Watchers

Forks