Features/Jetpack/Easy Page Mods
Status
Easy Page-Mods | |
Stage | On hold |
Status | ` |
Release target | ` |
Health | OK |
Status note | ` |
{{#set:Feature name=Easy Page-Mods
|Feature stage=On hold |Feature status=` |Feature version=` |Feature health=OK |Feature status note=` }}
Team
Product manager | ` |
Directly Responsible Individual | ` |
Lead engineer | ` |
Security lead | ` |
Privacy lead | ` |
Localization lead | ` |
Accessibility lead | ` |
QA lead | ` |
UX lead | ` |
Product marketing lead | ` |
Operations lead | ` |
Additional members | ` |
{{#set:Feature product manager=`
|Feature feature manager=` |Feature lead engineer=` |Feature security lead=` |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=` |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}
Open issues/risks
`
Stage 1: Definition
1. Feature overview
Writing page-mod contentScripts in Jetpack takes a lot more effort than writing a similar userscript in Greasemonkey or Scriptish.
The workflow for writing a Greasemonkey script is something like: 1. Write script. 2. Refresh page to test it. 3. Make changes to script. 4. Refresh page to pick up the changes and test it.
To do the same thing in the SDK with page-mods, it's more like this:
1. Write script.
2. Do cfx run.
3. Wait for Firefox to start up.
4. Go to the page you're testing the script on, test it.
5. Make changes to the script.
6. Go to #2.
It's even worse if you're going through the Add-on Builder website, as you have delays/hangs/timeouts while the add-ons get packed up server-side.
2. Users & use cases
Target audience is add-on developers who iteratively change their add-on's scripts to test changes. Allowing the developer to more quickly/easily test their changes to contentscripts will allow them to finish their job more quickly, saving them from the frustration of waiting for Firefox to start and install the add-on.
3. Dependencies
`
4. Requirements
`
Non-goals
`
Stage 2: Design
5. Functional specification
`
6. User experience design
`
Stage 3: Planning
7. Implementation plan
`
8. Reviews
Security review
`
Privacy review
`
Localization review
`
Accessibility
`
Quality Assurance review
`
Operations review
`
Stage 4: Development
9. Implementation
`
Stage 5: Release
10. Landing criteria
` {{#set:Feature open issues and risks=` |Feature overview=Writing page-mod contentScripts in Jetpack takes a lot more effort than writing a similar userscript in Greasemonkey or Scriptish.
The workflow for writing a Greasemonkey script is something like: 1. Write script. 2. Refresh page to test it. 3. Make changes to script. 4. Refresh page to pick up the changes and test it.
To do the same thing in the SDK with page-mods, it's more like this:
1. Write script.
2. Do cfx run.
3. Wait for Firefox to start up.
4. Go to the page you're testing the script on, test it.
5. Make changes to the script.
6. Go to #2.
It's even worse if you're going through the Add-on Builder website, as you have delays/hangs/timeouts while the add-ons get packed up server-side. |Feature users and use cases=Target audience is add-on developers who iteratively change their add-on's scripts to test changes. Allowing the developer to more quickly/easily test their changes to contentscripts will allow them to finish their job more quickly, saving them from the frustration of waiting for Firefox to start and install the add-on. |Feature dependencies=` |Feature requirements=` |Feature non-goals=` |Feature functional spec=` |Feature ux design=` |Feature implementation plan=` |Feature security review=` |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=` |Feature operations review=` |Feature implementation notes=` |Feature landing criteria=` }}
Feature details
Priority | Unprioritized |
Rank | 999 |
Theme / Goal | ` |
Roadmap | Jetpack |
Secondary roadmap | ` |
Feature list | ` |
Project | ` |
Engineering team | ` |
{{#set:Feature priority=Unprioritized
|Feature rank=999 |Feature theme=` |Feature roadmap=Jetpack |Feature secondary roadmap=` |Feature list=` |Feature project=` |Feature engineering team=` }}
Team status notes
status | notes | |
Products | ` | ` |
Engineering | ` | ` |
Security | ` | ` |
Privacy | ` | ` |
Localization | ` | ` |
Accessibility | ` | ` |
Quality assurance | ` | ` |
User experience | ` | ` |
Product marketing | ` | ` |
Operations | ` | ` |
{{#set:Feature products status=`
|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=` |Feature security health=` |Feature security notes=` |Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=` |Feature qa notes=` |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}
Changing to "On hold" to get it out of the Inbox.