Writing web application in Go can be pretty hard if you take care about login process wich include signing in, singing out, password recovery and minimal user management (like changing name, password and deleting account).
The solution can be a high level skeleton to help all those developers to focus on the application content.
Project is a work in progress, hosted on Github and is documented with code examples and some pictures.
How the things works? Supposing you have some experience with Go language and Mysql database, download the project from repository and compile.
You must create a database on your server and import
database.sql file into (adjust before the file with your database name). In
model folder you will find a model for Mysql Workbench application. You can use this model to sincronize with an existing database.
Next, you must complete the configuration file
conf.json. Basically you must set the database connection informations like ip/domain, user, password and schema name.
Also, you may need to set the mailer for password recovery procedure. No big deal here, use a mailbox created for this purpose.
If you run the skeleton for the first time you will be asked to add a new user (or signup).
Feel free to do this and then login
After that you must see the home page
You can manage local user account, logout and recovery forgotten password by clicking on the options from the top right bar.
A nice part is that you have a fallback offline page for network fails.
Now you are ready to write your applications, take a look over how to add simple application section from documentation to see how to extend the skeleton with new functionalities. A dummy example explain this.
Note that you will need a HTML5 browser to see the application but you shouldn't have problems with modern browsers. You can also use Chrome application mode for an experience more closest to native applications.