Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

alsmola/nopassword

An authentication and session management framework that eliminates the need for passwords.

alsmola/nopassword.json
{
"createdAt": "2012-04-20T20:08:29Z",
"defaultBranch": "master",
"description": "An authentication and session management framework that eliminates the need for passwords.",
"fullName": "alsmola/nopassword",
"homepage": null,
"language": "Ruby",
"name": "nopassword",
"pushedAt": "2020-06-25T04:48:17Z",
"stargazersCount": 555,
"topics": [],
"updatedAt": "2025-03-30T00:40:17Z",
"url": "https://github.com/alsmola/nopassword"
}

NoPassword is a simple authentication and session engine that removes the need for passwords. Instead, it uses tokens sent to an email address, similar to most forgot password functionality. These tokens created long-lived sessions that can be tracked and revoked easily.

Ben Brown wrote a great article about password-less logins, the same concept implemented by NoPassword.

NoPassword is structured as a Rails Engine, which you can mount in your routes file:

mount Nopassword::Engine, :at => "/nopassword"

You’ll need to install the migrations:

rake nopassword:install:migrations
rake db:migrate

You can set up a signin form with the send_login_email route and a request parameter named email.

You’ll need to get Rails’ ActionMailer configured correctly for sending NoPassword emails.

Finally, you need to download the latest GeoIP database:

cd db
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz && gzip -d GeoLiteCity.dat.gz

NoPassword uses the MIT-LICENSE.