mozilla-lockwise / lockwise-ios Goto Github PK
View Code? Open in Web Editor NEWFirefox's Lockwise app for iOS
Home Page: https://mozilla-lockwise.github.io/lockwise-ios/
License: Mozilla Public License 2.0
Firefox's Lockwise app for iOS
Home Page: https://mozilla-lockwise.github.io/lockwise-ios/
License: Mozilla Public License 2.0
Invision
Default: https://mozilla.invisionapp.com/share/XCEV238ZD#/267560598_Entry_List
Filtered: https://mozilla.invisionapp.com/share/XCEV238ZD#/283633648_Entry_List_-_Searching
Zeplin
Default: https://zpl.io/aBOOd4L
Filtered: https://zpl.io/aRNpKpN
per conversation on #52
Apple Documentation: https://developer.apple.com/library/content/documentation/General/Conceptual/AppSearch/UniversalLinks.html
When I have no entries visible in my Lockbox, I need to know how to access my saved logins via sync on my other devices, so I can get them on app
Should inform users how to hook up a device to get logins in the Lockbox app
Should acknowledge the other (rare?) use case where there may not be any logins is that the user has not saved logins on any device (This will be handled as a disclaimer in the TxP experiment description and corresponding app description)
NOTE This is a change from the original story which assumed logins would be coming from the extension.
(Updates to current empty state)
"Learn more" link directs to: https://lockbox.firefox.com/faq.html#how-do-i-enable-sync-on-firefox
InVision
https://mozilla.invisionapp.com/share/XCEV238ZD#/268085847_Entry_List_-_Empty_State
Zeplin
https://zpl.io/VxKMpdg
When retrieving Lockbox entry details, I want to quickly copy my username and password to paste into the app.
https://mozilla.invisionapp.com/share/BGENZYVT4#/screens/266152008
When accessing Lockbox, I want to be able to use Touch or Face ID instead of my password for security and convenience.
InVision
Touch ID: https://mozilla.invisionapp.com/share/XCEV238ZD#/288717368_Welcome_-_Returning_User_-_TouchID
Touch ID w/ prompt: https://mozilla.invisionapp.com/share/XCEV238ZD#/267560531_Welcome_-_Returning_User_-_Touch_ID
Face ID: https://mozilla.invisionapp.com/share/XCEV238ZD#/267560535_Welcome_-_Returning_User
Face ID w/ prompt: https://mozilla.invisionapp.com/share/XCEV238ZD#/288719841_Welcome_-_Returning_User_-_Face_ID
Zeplin
Touch ID: https://zpl.io/V0ZW5xO
Touch ID w/ prompt: https://zpl.io/2Ewwx5M
Face ID: https://zpl.io/aRNL9Ln
Face ID w/ prompt: https://zpl.io/b6leoDd
tasks:
WelcomeView
Depends on #171
InVision
Verifying: https://mozilla.invisionapp.com/share/XCEV238ZD#/268253309_FxA_-_Verifying
Complete: https://mozilla.invisionapp.com/share/XCEV238ZD#/268253308_FxA_-_Confirmed
Zeplin
Verifying: https://zpl.io/bAAB8Rx
Complete: https://zpl.io/ag9zK31
Before public release to Test Pilot.
Review to happen by @pauljt in early May 2018 (discussed and confirmed on April 18)
Notes here: https://docs.google.com/document/d/1xeJbySWXM6N4ZiGnBNb252Q-pfZmyBZLArv86_fO6Cw/edit#heading=h.17u3vmdm8zjg (internal Mozilla document)
Tracking bug here: https://bugzilla.mozilla.org/show_bug.cgi?id=1453173
submitted ticket with support; have tried a number of debugging steps
Right now, it's impossible to chain observables querying .js functions that are async because the evaluateJavascript function does not do async code.
There needs to be an extension / wrapper for the Datastore class that calls back to the appropriate Swift method to complete observables in the datastore when an async function completes.
Additionally, this will require the datastore initializer to get more robust, as we need to pass each callback to the .js runtime when initializing the webview.
As an existing Lockbox user,* I need to first log into my Firefox Account to access my saved entries.
(*)For Alpha, to use the iOS Lockbox app, you have to already be an existing Lockbox user on desktop. There isn't a path to start first in mobile, yet.
designs: https://mozilla.invisionapp.com/share/7JEUG47ZU#/screens/267560515
Signin with your firefox account
buttoncancel
buttonUpon signing into the Lockbox app, I want to be able to quickly access an app or website with my saved credentials.
Acceptance criteria:
To start, this is a read-only access to those entries
no search bar or A-Z selector
When I need to access an account, I want to copy the username or password so that I can easily paste those credentials into the native app or mobile browser where I'm logging in.*
(*) Without seamless app or browser integration, copy/paste is the best option for getting a user log in access on iOS.
https://mozilla.invisionapp.com/share/7JEUG47ZU#/screens/267560603
In research of the Alpha extension, we're seeing evidence that users expect autofill to recall credentials.
The expectation for mobile is that it is primarily a reference to already stored credentials, and users prioritize efficiency when accessing accounts. Given that, what are our options for streamlining authentication on iOS?
This will be helpful in informing UX as we get closer to needing an interface.
When I need to access an account, I want to see an entry's details to either copy credentials to my clipboard or view the username / password, so that I can easily put those credentials into the app or mobile browser.
https://mozilla.invisionapp.com/d/main#/console/12774944/267560603/preview
https://mozilla.invisionapp.com/share/XCEV238ZD#/279614760_Entry_Detail_-_Empty
https://mozilla.invisionapp.com/share/XCEV238ZD#/279614759_Entry_Detail_-_Address_Filled
https://mozilla.invisionapp.com/share/XCEV238ZD#/279655252_Entry_Detail_-_With_Notes
For Alpha, we're expecting this to be invite-only.
Opening this to explore our download options with Test Flight & BuddyBuild with pros and cons with each. This will help our scope where we want to release (which platforms).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.