/PasswordPusher

PasswordPusher is a Ruby on Rails application to securely communicate passwords over the web. Passwords automatically expire after a certain number of views and/or time has passed.

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

Password Pusher Front Page

PasswordPusher is an opensource Ruby on Rails application to communicate passwords over the web. Links to passwords expire after a certain number of views and/or time has passed. Hosted at pwpush.com but you can also easily run your own instance internally or on Heroku with just a few steps.

I previously posted this project on Reddit which provided some great feedback - most of which has been implemented.

Deploy to Heroku

Deploy

Deploy Internally

Make sure you have git and Ruby installed and then:

git clone git@github.com:pglombardo/PasswordPusher.git
cd PasswordPusher
bundle install --without development production test --deployment
RAILS_ENV=private bundle exec rake db:setup
foreman start internalweb

Then view the site @ http://localhost:5000/.

Note: You can change the listening port by modifying the Procfile

Troubleshooting

Command not found: bundle

If you get something like Command not found: bundle, then you need to run

gem install bundler

If you get something like 'Command not found: gem', then you need to install Ruby. :)

SQLite3

If the 'bundle install' fails with 'checking for sqlite3.h... no', you have to install the sqlite3 packages for your operating system. For Ubuntu, the command is:

sudo apt-get install sqlite3 ruby-sqlite3 libsqlite3-ruby libsqlite3-dev

Other Information

Tip

With the internal deploy process described above, SQLite3 is provided by default for a quick and easy setup of the application.

If you plan to use PasswordPusher internally at your organization and expect to have multiple users concurrently creating passwords, it's advised to move away from SQLite3 as it doesn't support write concurrency and errors will occur.

For example, on https://pwpush.com, I run the application with a Postgres database.

Initiated from this discussion on reddit.

See How to Switch to Another Backend Database for details.

Note for Existing Users

If you're already hosting your own private instance of PasswordPusher, make sure to do a periodic git pull from time to time to always get the latest updates.

You can always checkout out the latest commits to see what's been updated recently.

Credits

Thanks to:

See Also

quasarj created a django application based off of PasswordPusher

phanaster created a Coupon Pushing application (cpsh.me) based off of PasswordPusher

bemosior put together a PHP port of PasswordPusher: PHPasswordPusher