A plug-and-play user management library for Phoenix Framework apps, handling registration, login, logout, and password recovery.
Addict is a user management library specifically designed for Phoenix Framework applications. It provides a streamlined solution for implementing essential authentication and user account features, such as registration, login, logout, and password recovery, allowing developers to focus on building core application logic rather than reinventing authentication systems.
Elixir developers building web applications with the Phoenix Framework who need a ready-to-use, convention-over-configuration authentication system.
Developers choose Addict for its out-of-the-box functionality, seamless integration with Phoenix and Ecto, and extensibility through configurable routes and custom mailer support, reducing boilerplate and accelerating development.
User management lib for Phoenix Framework
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides mix tasks like `mix addict.generate.boilerplate` to generate necessary files, reducing initial setup time for Phoenix apps as documented in the README.
Allows overriding paths and controllers for authentication routes, demonstrated in the router configuration examples for tailored endpoints.
Includes `Addict.Plugs.Authenticated` to easily protect routes, redirecting unauthorized users to a configurable URL, streamlining secure access control.
Offers `Addict.Helper.current_user/1` and `is_logged_in/1` for straightforward user state management in controllers, simplifying session checks.
Only Mailgun is supported out of the box; other services require implementing custom mailers, adding development overhead as admitted in the README's optional dependencies.
The mailgun dependency locks Poison to an old version (1.4), causing potential conflicts that require manual overrides, as noted in the installation steps.
Mandates a specific schema with `email` and `encrypted_password` fields, limiting flexibility for apps with different user structures without modifications.
A server-side rendering component library for Phoenix