The Future of jQuery UI and jQuery Mobile

Posted on by

Reposted from blog.jqueryui.com/2017/12/the-future-of-jquery-ui-and-jquery-mobile/

The last few years have been difficult for the jQuery UI and jQuery Mobile projects. The projects have suffered from lack of resources and funding and loss of contributors due to a variety of factors. These combined factors have nearly stopped development on both projects. To remedy this situation we have decided to make some changes in the projects’ teams in addition to how they work.

Scott Gonzalez has lead the jQuery UI project for many years now and has helped to improve the quality tremendously. He has decided to step down from leading the project though he will still be helping in various ways. In an attempt to best utilize resources we have decided to combine the 2 teams into a single team under the leadership of Alex Schmitz, a long time jQuery UI contributor as well as the lead for jQuery Mobile. What this means is that the combined contributors will be able to serve the projects better, since both projects are very tightly coupled as jQuery Mobile depends upon jQuery UI. This does not mean that the two projects will become a single project. Both projects will continue to exist in their own repositories. However, we do hope to continue reducing the amount of duplicated code and widgets in the projects moving anything common to jQuery UI. Eventually, making jQuery Mobile more of an app framework with all the widgets living in jQuery UI.

In the past, when someone wanted to join the jQuery UI or jQuery Mobile teams we expected them to contribute to the library as a whole. We think going forward this needs to change; we will now be looking for and accepting people that are just interested in maintaining a single piece of the library, requiring a much smaller time contribution. So, if someone is just interested in working on sortable they could just lead the sortable widget without having to contribute to any other parts of the two libraries. This will not only allow for more focused and less time consuming contribution but also allow better specialization within our team.

In the past we have done all communication through IRC. Over time however, we have seen a large decrease in the number of people on IRC while other projects have had great results with easier to use tools like Slack. As a result, we will be switching to Slack for daily communication and meetings. We hope that this will ease contributions and interactions with potential new team members. Anyone can join the new Slack channel by navigating to http://bit.ly/2Btf6pu (Update: Matrix and Libera Chat).

In conclusion, we are currently very interested in attracting new team members to the combined jQuery UI and jQuery Mobile team. Anyone who is interested can feel free to reach out to Alex Schmitz, the new team lead for both projects, join our slack channel or even find us on IRC (we are still there). jQuery UI and jQuery Mobile rely on contributions from the community and can only continue to exist with your help!

JQuery Mobile 1.5.0-alpha.1 Released

Posted on by

The first alpha release for jQuery Mobile 1.5 is out with numerous bug fixes, an updated base theme, overhauled auto initialization, new methods,  and new widgets!

The big changes:

  • New widgets: we have adopted the new controlgroupcheckboxradio, and button widgets from jQuery UI and have incorporated the accordion widget to replace the collapsible and collapsible set widgets which have been deprecated.
  • Rewritten widgets: The navbar and table widgets have been re-written with new features, performance improvements, and modularization improvements.
  • New auto enhancement module: The auto init for jquery mobile has been extracted into its own general purpose module with speed improvements that can make it faster then calling individually. On
  • Improved modularization: All code is now fully modularized to be able to include just the code you need.
  • Backcompat module: We now include all backcompat code as separate modules so it can be excluded and include a method to turn off all backcompat code for testing and upgrade.
  • New method: The .labels() method finds all label elements associated with the first selected element, mimicking the native labels property and has been incorporated from jQuery UI.
  • npm support: The jquery-mobile package on npm is now owned and maintained by the jQuery Mobile team.
  • Added jQuery 3.x support: We officially added support for jQuery 3.x.
  • Reduced old IE support: jQuery Mobile 1.5 officially drops support for IE 10 and below and Android 4.0 and below
  • Bug fixes: We have closed and fixed hundreds of bugs getting to our lowest bug count since the initial release of jQuery Mobile!

For the first time, we have our full changelogdownload builder, and API documentation ready during the pre-release phase.

Download

Git

Comments

Note: please do NOT use the comments section of this blog post for reporting bugs. Bug reports should be filed in the jQuery Mobile Bug Tracker and support questions should be posted on the jQuery Forum.

If you have feedback on us doing our first beta release for jQuery Mobile 1.5, feel free to leave a comment below. Thank you.

A long overdue status update

Posted on by

It has been a long time since the release of jQuery Mobile 1.4, and we have started to get a lot of questions about the status and future of the project. First and foremost, I would like to say that we are very much still alive and working. Looking at the master branch, it may seem like there hasn’t been much happening. That is because we moved our development to a jQuery Mobile 1.5 branch while we worked on some very big breaking changes. This work ended up taking a lot longer than expected which has delayed the release of 1.5-beta more than we would have liked.

With the beta release of jQuery UI 1.12, we are almost ready to release and have just three more widgets to finish work on (see the open Pull Requests for panel, table, and selectmenu). Here is a quick status update of what we have been doing and have coming up in future versions.

We have combined efforts with the jQuery UI team to stop duplicating widgets. We now share the rock solid and newly re-written jQuery UI core. Components from jQuery UI we now incorporate include:

  • Core (now broken up into individual micro modules)
  • Button
  • Checkboxradio
  • Controlgroup
  • Accordion
  • Tabs
  • Widget factory

We have made sure all of our widgets now support the core jQuery UI Widget factory methods and options. Included in the new features is a classes option, which allows complete control over the look of your widgets, which will open up whole new custom theming possibilities. Our work with jQuery UI will continue in future versions. In upcoming versions we will be working to incorporate the remainder of jQuery UI features and widgets (including the ever popular datepicker) into jQuery Mobile. A big step forward for jQuery Mobile will also be the incorporation of the interactions like draggable, droppable, and sortable from jQuery UI.

We have also not forgotten the widgets which are specific to jQuery Mobile. We have completely re-written the navbar and table widgets for 1.5. Continuing the work on auto-enhancement we began in 1.4, the auto-enhancement based on data-role has been completely rethought from the ground up. It is now a stand-alone module that can work with widgets as well as any function or jQuery method. It is now highly optimized for speed and page reload. In complex pages with lots of enhancement, the auto-enhancements are faster than individual selectors and function calls.

The team has been working hard behind the scenes improving our code quality, testing, and infrastructure. In 1.5 we have cleaned up a lot of our current testing infrastructure and now also share testing infrastructure we developed with jQuery UI. We have also unified our use of AMD and are finishing up sharing a download builder. In the future, we plan to also share a theme and theme roller with jQuery UI. Our plan for theme roller is to both use CSS Chassis and the theme roller they intend to build, separating the theming from the JavaScript libraries.

We have also been looking into how to provide the best possible touch screen support. To this end we have made two major decisions moving forward:

  • Looking forward, we are also working to join efforts with PEP (Pointer Events Polyfill) and Hammer.js to improve our gesture support. Hammer.js is a very popular and robust gestures library that will help to improve jQuery Mobile while lowering maintenance costs for the team.
  • We will also be removing our vmouse abstraction in favor of PEP, a pointer events polyfill.

Lastly, we would like to address browser support. We have always attempted to support as many browsers as possible, but in order to move forward in the rapidly changing landscape we will be dropping support for many older browsers. Going forward we will support:

  • IE 11+
  • Chrome Current -1
  • Firefox Current -1
  • Safari 8+
  • iOS 8+
  • Android 4+
  • Windows Phone 8.1+

We have not removed any workarounds or bug fixes in 1.5, but we will no longer be accepting bug reports against other browsers and will remove workarounds in 1.6.

There are many more changes coming both in 1.5 and future versions, but this gives you an idea of the things that we have been working on and what is coming in the future.

jQuery Mobile 1.4.5 Released

Posted on by

We released the 5th maintenance release for jQuery Mobile 1.4 today to fix a few last creepy crawly bugs that cropped up from iOS8. See the 1.4.5 changelog for a list of all changes that landed in this fifth maintenance release for jQuery Mobile 1.4.

Checkout the 1.4.5 demos!

Download

CDN-Hosted JavaScript:

CDN-Hosted CSS:

Copy-and-Paste Snippet for CDN-hosted files:

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

ZIP File:

If you want to host the files yourself you can download a zip of all the files.

Download Builder:

Git

Supported jQuery versions

jQuery Mobile 1.4 supports jQuery core 1.8 and newer.

Graded Browser Support

See the jQuery Mobile 1.4 Supported Platforms page for the Graded Browser Support of this version.

Changelog

All changes are listed in the 1.4.5 changelog. If you are upgrading from jQuery Mobile 1.3 you can use the 1.4 upgrade guide.

 

Comments

Please do not use the comments section of this blog post to report bugs or ask for support. See our Contributing Guidelines for instructions about reporting issues. Use the forum for support questions. Thank you!