diff --git a/specs/7.0/tbs3.rst b/specs/7.0/tbs3.rst new file mode 100644 index 00000000..23603570 --- /dev/null +++ b/specs/7.0/tbs3.rst @@ -0,0 +1,164 @@ +.. + This work is licensed under a Creative Commons Attribution 3.0 Unported + License. + + http://creativecommons.org/licenses/by/3.0/legalcode + +================================ +Migration to Twitter Bootstrap 3 +================================ + +https://blueprints.launchpad.net/fuel/+spec/tbs3 + +Migrate from Twitter Bootstrap 2 (TB2) to Twitter Bootstrap 3 (TB3). + + +Problem description +=================== + +Currently Fuel UI is based on TB2, which is not supported for more than a +year. The current version of Twitter Bootstrap is 3.3.4. Also, our styles file +(for TB2) is poorly structured as we haven't refactored it since the very +beginning. + + +Proposed change +=============== + +We should migrate to TB3 and reimplement Fuel UI markup according to Twitter +Bootstrap changelog. Migrating to a newer version of Twitter Bootstrap is a +great chance to reduce technical debt: we'll also have to reimplement all the +styles. + +Migration can be done in a few steps: + +* Base layout markup (navbar, footer, page wrapper) +* Simple pages (support page, login page, releases page, etc.) +* Cluster page markup +* Cluster page tabs +* Nodes tab screens (disks, interfaces) +* Dialogs + +Alternatives +------------ + +Migrate to some other HTML framework, though it doesn't makes much sense. + +Data model impact +----------------- + +None. + +REST API impact +--------------- + +None. + +Upgrade impact +-------------- + +None. + +Security impact +--------------- + +None. + +Notifications impact +-------------------- + +None. + +Other end user impact +--------------------- + +As we're changing markup, we also can alter look of some features to match +the new style. + +Performance Impact +------------------ + +There could be slight impact to performance of Fuel UI in browser as we +overhaul the styles and markup, not sure if it get worse or better. + +Plugin impact +------------- + +None. + +Other deployer impact +--------------------- + +None. + +Developer impact +---------------- + +Fuel UI contributors should be aware of the changelog of TB3 to efficiently +write new code. + +Infrastructure impact +--------------------- + +None. + + +Implementation +============== + +Assignee(s) +----------- + +Primary assignee: +* Vitaly Kramskikh + +Other contributors: +* Alexandra Morozova +* Bogdan Dudko +* Julia Aranovich +* Kate Pimenova +* Nikolay Bogdanov + +Mandatory design review: +* Vitaly Kramskikh + +QA engineer: +* Anastasia Palkina + +Work Items +---------- + +As described in ``Proposed change`` section, though some changes could be more +granular. + + +Dependencies +============ + +None. + + +Testing +======= + +Existing functional test suite should be modified to support new markup. + +Acceptance criteria +------------------- + +* New TB3-based markup is applied without any significant flaws (sizing and + layout issues). +* Every existing UI feature works as it worked before, no missing information + or controls. + + +Documentation Impact +==================== + +Screenshots of Fuel UI in the existing documentation should be updated. + + +References +========== + +* #fuel-ui on freenode