Productive. Reliable. Fast.
Gazler and chrismccord Use FunctionClauseError for Phoenix.ActionClauseError (#3102)
Using `FunctionClauseError` results in showing the available clauses
when displaying the error message. This also renders nicely in the plug
exceptions page.

Instead of using `plug_status` in the exception, the `Plug.Exception`
protocol is explicitly defined for the `ActionClauseError` to allow easy
transitioning between `ActionClauseError` and `FunctionClauseError`.`

This closes #2657
Latest commit 054a1c8 Oct 17, 2018

README.md

phoenix logo

Productive. Reliable. Fast.

A productive web framework that does not compromise speed and maintainability.

Build Status Inline docs

Getting started

See the official site at http://www.phoenixframework.org/

Install the latest version of Phoenix by following the instructions at https://hexdocs.pm/phoenix/installation.html#phoenix

Documentation

API documentation is available at https://hexdocs.pm/phoenix

Phoenix.js documentation is available at https://hexdocs.pm/phoenix/js

Contributing

We appreciate any contribution to Phoenix. Check our CODE_OF_CONDUCT.md and CONTRIBUTING.md guides for more information. We usually keep a list of features and bugs in the issue tracker.

Generating a Phoenix project from unreleased versions

You can create a new project using the latest Phoenix source installer (the phx.new Mix task) with the following steps:

  1. Remove any previously installed phx_new archives so that Mix will pick up the local source code. This can be done with mix archive.uninstall phx_new or by simply deleting the file, which is usually in ~/.mix/archives/.
  2. Copy this repo via git clone https://github.com/phoenixframework/phoenix or by downloading it
  3. Run the phx.new mix task from within the installer directory, for example:
$ cd installer
$ mix phx.new dev_app --dev

The --dev flag will configure your new project's :phoenix dep as a relative path dependency, pointing to your local Phoenix checkout:

defp deps do
  [{:phoenix, path: "../..", override: true},

To create projects outside of the installer/ directory, add the latest archive to your machine by following the instructions in installer/README.md

To build the documentation from source:

$ cd assets
$ npm install
$ cd ..
$ MIX_ENV=docs mix docs

To build Phoenix from source:

$ mix deps.get
$ mix compile

To build the Phoenix installer from source:

$ mix deps.get
$ mix compile
$ mix archive.build

Building phoenix.js

$ cd assets
$ npm install
$ npm run watch

Important links

Copyright and License

Copyright (c) 2014, Chris McCord.

Phoenix source code is licensed under the MIT License.