simonedbarber / auth_themes

Auth Themes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Auth Themes

Auth Themes is a collection of themes for Auth, which is a Golang authentication framework.

It aimis to reduce repeated code, make you be able to integrate Auth into your application with few lines of code.

Usage

Each theme might has different usage, please refer their own documents, but most of them should be easy as accept an Auth Config to initialize itself.

Here is an example for how to use theme clean

import  "github.com/simonedbarber/auth_themes/clean"

func main() {
  Auth = clean.New(&auth.Config{
    DB:         db.DB,
    Render:     config.View,
    Mailer:     config.Mailer,
    UserModel:  models.User{},
    Redirector: auth.Redirector{RedirectBack: config.RedirectBack},
  })
}

How to create themes

Although integrate Auth into your application already much easier than write your own solution, it is boring/time costing to repeat yourself again and again.

To avoid this, you could create your own Auth theme.

Usually when write your theme, you can just accept an Auth Config and extend it with some default settings, and prepend Auth's ViewPaths to customize view templates, for example:

func New(config *auth.Config) *auth.Auth {
  if config == nil {
    config = &auth.Config{}
  }
  config.ViewPaths = append(config.ViewPaths, "github.com/simonedbarber/auth_themes/clean/views")

  Auth := auth.New(config)
  return Auth
}

Refer Theme Clean for more details

About

Auth Themes

License:MIT License


Languages

Language:Go 100.0%