564
edits
No edit summary |
|||
| Line 3: | Line 3: | ||
Create a sensible, easy to use Query API for Places for Firefox.next & Jetpack. This API should make it possible to do targeted queries against history and bookmarks with a minimum of code. | Create a sensible, easy to use Query API for Places for Firefox.next & Jetpack. This API should make it possible to do targeted queries against history and bookmarks with a minimum of code. | ||
== | == Goals/Use Cases == | ||
* An elegant and easy to use API. Fx devs, Jetpack and extension developers will all benefit. | |||
* allows us to prototype the new ui for Fx.next | |||
* 'Pluggable' results handling | |||
* Focus on JS usage | |||
* Paging Support - Sounds like a great use of Generators! | |||
* Fetch individual record by Id or other property | |||
(After talking to the Labs guys about Weave, we should try to provide a plugin-interface whereby you can allow a developer to keep track of and index random JSON objects. | |||
Dan Mills has example code that was created for the people store. Link coming soon.) | |||
== Non Goals == | |||
* Tailoring the API to tree views | |||
* Creating the perfect API (lets iterate) | |||
* Intended as a snap-in replacement of the current API | |||
== Status == | |||
* Landed in Jetpack 0.8 | |||
* Team | |||
** '''API''': ddahl, mak | |||
** '''UX/UI''': faaborg | |||
* Implementation bugs: {{bug|522572}} {{bug|531940}} {{bug|543888}} | |||
* Next Steps | |||
** Iterate the feel of the API with the Places team and other interested developers. Ideas and feedback are encouraged. Build a non-working skeleton with Marco to use as a design to work from. | |||
** Use all-async storage methods | |||
== Timeline / Milestones == | |||
* 2010/02 Landed in Jetpack 0.8 | |||
* 2010/03 Work on "skeleton" API design with Marco | |||
* More details soon. Current work on DevTools/Console/Heads Up Display is blocking. | |||
== Delivery Requirements == | |||
* This is purely additive. | |||
* Coordination with Jetpack as this should be coded once, checked into places and imported into Jetpack's implementation. | |||
== Constraints == | |||
* Final implementation should use only Async Storage APIs | |||
== Dependencies == | |||
== Testing == | |||
* Comprehensive xpcshell tests | |||
* Example/Documentation style Browser Chrome tests | |||
* TDD | |||
== Related Projects == | |||
* Jetpack | |||
== Additional Details == | |||
The initial API "sketches" are here: [https://wiki.mozilla.org/Firefox/Projects/PlacesQueryAPISketches] | |||
Faaborg has been mocking up designs and putting a lot pf thought into the UX: http://blog.mozilla.com/faaborg/2009/10/13/browsing-your-personal-web | |||
== Inspriation == | == Inspriation == | ||
edits