7Pass Remake progress

I’ve made some good progress on 7Pass Remake, a total remake of 7Pass specifically for Windows 8.1 Store and Windows Phone 8.1. The source code is now available on GitHub. I don’t expect any pull request yet at the moment, as it’s still in development progress.

The introduction of Windows Phone 8.1, specifically Universal is a big step forward. The main pain point for me is solved in Windows Phone 8.1: it’s now possible to open a file from your phone, SD card or even another app. I have not been able to open a document from OneDrive so far on my phone, but I believe OneDrive will be a file picker when Windows Phone 8.1 is finally released to end users. 7Pass Remake will not longer handle synchronization, but it leave it to 3rd party app instead. User first open 7Pass, pick a file from any source, and 7Pass will keep a local cache of the database, but will check with the source on every start to see if there is update, and will update the database automatically. DropBox and SkyDrive in old 7Pass will be replaced by DropBox and OneDrive apps, Web will be replaced by downloading the database to your phone using your browser, I believe some one will develop an app for WebDAV as well.

Another issue is data encryption. “Remember password” in old 7Pass required the decrypted database XML to be stored on the phone. Windows Phone 8.1 now provides data protection, just like on desktop, so that the data can be encrypted and decrypted only by a specific app + user + phone combination. This allows the decrypted database to be cached safely on the phone, with a simple encryption that cannot be decrypted easily by others.

Technically, development with Universal app is also greatly improved. Unit tests can now be executed using Resharper unit test runner. NCrunch should also be able to run the test, but since my NCrunch license expired, it could not use the latest version of NCrunch that support xUnit 2, which support universal app. Caliburn Micro is godsend, the app development is so much easier with it, simple code, great conventions, great structure.

I’m currently concentrating on Windows Phone experience, but I’d want to release Windows 8.1 Store app as well. I plan to have only free version of 7Pass Remake, and use in-app purchase as the optional “I like this” donation solution, to avoid the confusion between paid and free version.

Let’s start with preview of the UI that I have so far:

Started 7Pass, tap on “add” button to pick a database file. Your database will need to have “.kdbx” extension.

Initial.Screen

Tap on SD card to pick a file from SD card.

Open.Database

There’s our database. Tap on it to select.

Picked database file is added to 7Pass. 7Pass do not check for update at the moment, but when released, 7Pass will check for updates to the database file and synchronize it. Tap on database to open it.

Database.Added

Enter password to open database. There’s also the “keyfile” button in the app bar to pick a keyfile from any source (phone, SD card, or another app). 7Pass do not cache the file, for security purpose.

Master.Password

Groups and entries are displayed, normal stuff, nothing special.

Groups

Scroll down to see our entry, there’s our new feature: button to toggle password. I often find that I used 7Pass mostly to view the password, much more frequent than actually editing it. I’ll want to see both username and password, so let’s tap on the show password button on the right.

Entry

 

 

 

Password is now shown in place where title used to be. Tap again to how password. Password is shown using “Courier New” font, which better suits password nature than standard fonts, and the font size also size to fit the screen.

Entry.Toggle

Another entry, to show the sizing of password, put your phone to horizontal will certainly gives it more space, meaning easier to read password.

Entry.Toggle.AutoSize

There you have it, my progress so far on 7Pass. Development on Windows Phone 8.1 is amazing, and I hope to release 7Pass remake as soon as possible.