Mozilla.com/ProductDetailsRefactoring
Jump to navigation
Jump to search
The product-details library has grown over the years, adapting to a lot of changes. We'd like to refactor it to make it easier to work with.
Before the actual refactoring, we need to identify every current use-case.
Current source code: http://svn.mozilla.org/libs/product-details/
Use cases
www.mozilla.com (future part of www.mozilla.org)
- Offer download buttons for current versions for every locale
- Firefox, Release, Beta and Aurora
- Firefox Mobile, Release, Beta and Aurora
- Thunderbird, Release, Beta and Aurora
- Current version can be different for each locale
- Offer full list of download links for current and previous (3.6) version
- Variations for OS (Windows, Mac, Linux), architecture (32, 64 bits)
- Decide which version of a page we should display based on availability of a version (aka feature flags)
- Others?
affiliates.mozilla.org
- Get a list of locales and countries for users to choose from when signing up.
www.mozilla.org
Please add your usecases over here.
addons.mozilla.org
Please add your usecases over here.
Your website
Please add your usecases over here.
Ideas for implementation
Those are some ideas written down. Definitely not set in stone.
- product-details should be a source of data first, with some PHP/Python methods to extract some of it based on some rules.
- shell commands to generate/alter the JSON, no manual editing
- download buttons should link to the download page when JS is disabled
- Download links could be based on the visited locale instead of user agent
- JS is only responsible for choosing a platform (OS + architecture)
Next steps
- Get feedback from webdev, release engineering, l10n, community websites
- Use this to have a clear picture of the needs of everyone
- Code!