riverrun / openmaize

No longer maintained - was an Authentication library for Plug-based applications in Elixir
Other
206 stars 30 forks source link

Spring cleaning / reorganization -- discussion #99

Closed riverrun closed 7 years ago

riverrun commented 7 years ago

I'm experimenting with the idea of having a quite small base library and moving the confirmation functions into a separate library.

Reasons

Progress

Here is the work I've done so far on the base / core library. I'm going to add a opnmz_confirm repository in a day or two.

Any feedback I can get will be most welcome.

fabrik42 commented 7 years ago

Hi!

In general, I would be fine with this as long as there is a specified upgrade path. :) Maybe this provides an opportunity to add more complex confirmation scenarios?

Keep up the good work!

riverrun commented 7 years ago

At the moment, I just want to try a few ideas, and I will try to make the upgrade path as painless as possible.

I think it would be nice to keep the core fairly lightweight and concentrate on making the modules easy to customize. That way, we can help developers tailor the Plugs / authentication modules to their specific needs.

About confirmation, it would be nice to have something in place for phone confirmation, which I imagine will only get more popular, but I haven't really got anywhere with that yet.

Here's another simplified version, but this one also depends on Phoenix, so that I can take advantage of Phoenix Token (and possibly other Phoenix goodies in the future).

riverrun commented 7 years ago

Here is the core app and here is the confirmation app.

The tentative plan at the moment is to move development to these apps when Phoenix reaches 1.3. The installer for Openmaize will be kept at the pre-1.3 stage, and Openmaize will be maintained on a 'bug-fix only' basis.

The main differences between Openmaize and the Phauxth apps are:

I will keep you posted about any other developments.

fabrik42 commented 7 years ago

This sounds good to me. Just my two cents, but I think it's a good idea to keep Phoenix as a dependency and use existing solutions (like Plug.Session, Phoenix.Token) instead of reinventing the wheel.

Also, I like the idea of making Phoenix 1.3 the breaking point, this way I can plan my upgrade better.

riverrun commented 7 years ago

Phauxth app

Hex package

Phauxth installer for Phoenix 1.3

I've put the confirmation functionality back into the main library. I've also tried to make it easier to handle user confirmation with methods other than email -- phone, for example.

I will add an upgrade guide sometime this week.