Skip to content

A template that creates a basic Phoenix project with authentication, authorization, and a JSON API.

Notifications You must be signed in to change notification settings

ElixirCLE/phoenix_with_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Phoenix With API

This is a mix template for creating a basic Phoenix application that also has an API. The template will start you out with working registration, session, and basic account pages/endpoints.

The only missing part of the Phoenix project is the Phoenix logo and the Favicon.

The following non-default dependencies are included:

  • Comeonin for password hashing
  • Guardian for authentication and JWT generation/verification
  • Canary for authorization.
  • Credo for static code analysis

If you create a Heroku project, the following dependencies are also included:

  • Scout APM for application monitoring

This template was created by roughly following this guide: http://www.schmitty.me/phoenix-1-3-and-webpack-2-0/.

You will need to install the following mix dependencies globally to use this template:

$ mix archive.install hex mix_templates
$ mix archive.install hex mix_generator

To use this, clone it and navigate to the parent directory of this project. Then:

mix gen ./phoenix_with_api name_of_project [options]

Options

Several options exist to help set up your project with some extra configuration:

travis_ci

Use this option when you'd like your project to be configured to work with Travis CI. When set, this will generate a .travis.yml file that is configured to use Elixir 1.5.0 and OTP 20.0.

Usage

mix gen ./phoenix_with_api name_of_project --travis_ci

heroku

Use this option when you'd like your project to be configured to work with Heroku. When set, this will generate several files:

  • Procfile - Configured to run your migrations whenever you make a new release and start your server
  • elixir_buildpack.config - Configured to tell Heroku that you are running on Elixir 1.5.0
  • config/scout_apm.exs - Configures your project to work with Scout APM for application monitoring in Heroku

Usage

mix gen ./phoenix_with_api name_of_project --heroku

License

This project uses the MIT License


Created: 2017-07-12Z

About

A template that creates a basic Phoenix project with authentication, authorization, and a JSON API.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published