Skip to content

Elixir Phoenix demo blogging app with authentication using JWTs via the guardian library.

Notifications You must be signed in to change notification settings

EssenceOfChaos/tidbits

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tidbits

A working demo of an Elixir/Phoenix application that attempts to follow best practices while implementing many of the modern features found in web applications.

Features

  • User authentication & authorization using JSON Web Tokens JWT via the Guardian library.

  • Database persistence with Postgres, including modeling has_many and belongs_to relationships, input validation, and default values. We'll also use trigger procedures and pg_notify to create a real-time pub/sub feature, pushing updates to the UI from the database layer.

  • Implementing named slugs - Post title used as resource location. Instead of posts/1 the resource is accessed at posts/post.title, providing more meaningful routes and greatly improved SEO.

  • Support for standard CRUD operations via a RESTful API. Authentication prevents users from editing or deleting posts that they did not create themselves.

  • Real-time bidirectional communication via Phoenix Channels, which utilize websockets.

  • More coming soon...currently in active development


Run locally

  • Clone or download the repo
  • Install dependencies with mix deps.get
  • Create and migrate your database with mix ecto.setup
  • Install Node.js dependencies with cd assets && npm install
  • Start Phoenix endpoint with mix phx.server

Now you can visit localhost:5000 from your browser.

Links

About

Elixir Phoenix demo blogging app with authentication using JWTs via the guardian library.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages