The-M-Project includes code from a number of different open source projects including Backbone.js, Underscore.js, Modernizr, Moment.js, Bower, Yeoman, jQuery, Hammer.JS, Grunt and many more.
This creates a solid base for assembling HTML 5 applications, specifically crafted and adapted to run on mobile devices.
Using The-M-Project helps developers out by providing one single codebase from where to manage and compile an application, instead of having to deal with a separate code repository for each catered mobile platform.
Features:
- General features:
- MVC codebase
- HTML 5 support
- JavaScript-all development cycle
- Offline support
- Rich user interfaces
- DataProvider for local and remote storage persistence
- Internationalization (i18n)
- Node.js based build tools
- CSS3-based transitions
- URL deep-linking
- SCSS support
- Themes
- Platforms:
- Palm WebOS
- Windows Phone
- Blackberry
- Kindle
- Android
- iOS
What is new in this release:
- Implemented theme in M.TextFieldView
- Added appdidload event
- Added cssClass property to M.GridView
- Updated jQuery to 1.9.1
- Updated jQuery mobile to 1.3.0
- Bugfix setActiveItem-method in CarouselView
- Allow whitespace in property name of valuePattern
- Added nearestNumber function to M.Math
- Bugfix setActiveItem-method in CarouselView: Paginator didn't update
- Updated d8 to v0.4.0
- Updated underscore.js to v1.4.4
- Added MovableLabelView
What is new in version 1.3.0:
- Fixed a bug with image view and the load event
- Fixed a bug with M.WebView and Android+Cordova (render pseudo div and push iframe dynamically)
- Set the current list item value to the view value. This enables for example to get the value/contentBinding of a list item in a template view.
- Fixed an issue with the debugMode flag and M.Logger (thx to wherati)
- Added M.ImagePreloader component and linked it with espressos preloading part to auto-load all images on startup if enabled via config.json.
- Refactored internal id/model_id behaviour of list item ids passed when a list item is selected.
- Disabled the automatic positioning of buttons within a list item view applied by jQuery Mobile.
- Added updateListItemView to M.ListView.
- Minor performance improvement for M.LoaderView (cached selector).
- Fixed inconsistency bug with selection list in single_selection_dialog mode.
- Added iconSize property to M.MapMarkerView.
- Added auto-destroy on DOM remove especially for list items
What is new in version 1.1.0:
- Fixed isAsync and isJSON flags in M.Request
- Fixed tap/click issue with google maps on iOS
- Fixed a bug with event dispatching and hyperlinks for buttons/labels
- Fixed themeUpdate() of M.SelectionListView and with single selection dialog mode (no more js errors with empty content binding)
- Fixed issue with having multiple toolbars when "outsourcing" them into a seperate file
- Fixed issue with hard coded view id in table view (thx to jianliao)
- Added parentView property to any view that is rendered within renderChildViews
- Updated D8 library to 0.1.5
- Clear the validation status before validate it again (thx to jianliao)
- Added events property to M.ListView that gets applied to all items if the template does not specify events too
- Added swipe button feature to M.ListView / M.ListItemView
- Added hasAsteriskOnLabel property to M.TextFieldView, M.SliderView and M.SelectionListView (thx to jianliao)
- Added a complex split view component to the framework (M.SplitView, M.SplitItemView, M.PopoverView, M.SplitToolbarView)
- Fixed an issue with minifed modernizr and Espresso's DCE
- Updated D8 to v0.1.6 (thx to josher19)
- Fixed issue with google call to non existing variable in M.MapView
- Updated jQuery to 1.7.1
- Updated jQuery Mobile to 1.1.0
- Updated mobiscroll to 1.6
- Fixed an issue with possibly undefined variable in M.FormView
- Updated D8 library to 0.2.0
- Updated Underscore to v1.3.2
- Added parameterized M.I18N
- Fixed a bug with regex check for valuePattern in M.ListView
- Improved behaviour and stability of dialogs
- Adjusted look and feel of date picker to fit into jqm design
- Adjusted a few ui components to work with jqm 1.1
- Implemented real fixed toolbars/tab bars of jqm 1.1
- Adjusted M.SliderView to make use of jqm's 'highlight' option
- Fixed a bug with M.ListView (rendering of sub views is now possible)
- Fixed a bug with M.ScrollView
- Upgraded split view to work with JQM 1.1
What is new in version 1.0.0 RC1:
- Fixed a bug with sendNoCacheHeader property of M.Request
- I18N not sets language to default language if the desired one is not available
- Fixed a bug in M.Request concerning the internal callbacks
- Added M.DataConsumer as a special data provider that only works as a source and in combination with the model's find()
- Fixed a bug with textfields (date input), computed value and the datepicker
- Updated Underscore to v1.3
- Updated mobiscroll to 1.5.3
- Fixed a bug with M.ScrollView and the clear button
- Added disable()/enable() and clearValue() to M.SearchBarView
- Added cssClass property to M.ListView
- Added special behaviour for M.ButtonView inside of an M.ToggleView
- Model: changed m_id from number to unique string (4 digits each can be one of 32 chars)
- Model: deleted bulkImport method
- Renamed getRecordForId() to getRecordById() (in M.RecordManager), the latter one is deprecated now
- Deleted M.ModelRegistry
- Deleted M.DataProviderCouchDB
- Deleted M.DataProviderWebSQL
- Method find() in DataProviderLocalStorage now takes an object for query
- Added "include" operator (for strings) for LS find query
What is new in version 0.8 alpha:
- Fixed a typo bug in M.Request
- Added M.CanvasView
- Added numberOfChars property to M.TextField (equivalent to HTML's maxlength property)
- Fixed a UTF8 bug in M.ListView
- Added M.TextFieldView to supported views within a list item view.
- Removed deprecated useTransitions property of M.Application (use getConfig() instead)
- Fixed a bug with the switchToPage() (make use of the fourth parameter: updateHistory)
- Added all the date-types as possible values for inputType for M.TextFieldView
- Added M.SliderView (based on input type range and jqm)
- Reposition dialogs on orientation change
- Added queue to dialogs to only show one at a time
- Added the M.MULTIPLE_SELECTION_DIALOG mode to M.SelectionListView
- Added 4-column layout to M.GridView
- Updated Underscore to v1.2.2
- Updated mobiscroll to v1.5.2
- Added a custom Modernizr configuration to M.Environment for detecting HTML5 input types
- Added M.DatePickerView as fallback to date input types for M.TextFieldView
- Added callbacks to initMap()
- Added disable() / enable() to M.SelectionListView
- Added M.TableView (first, simple version)
- Refactored M.Request to use the callbacks property
- Added sendNoCacheHeader and sendTimestamp properties to M.Request
What is new in version 0.6 alpha:
- Refactored content binding (3): set() now can set single values of a chain like 'person.address.street'
- Added 'orientationchange' event to M.PageView
- Fixed M.LoaderView
- Removed useless properties of M.Application (viewManager, modelRegistry, ...)
- Refactored M.MapView: Load google maps api only if connection available (this fixes a bug with the cache manifest)
- Added unregisterEvents() to M.EventDispatcher
- Renamed remove() to unregister() in M.ViewManager
- Refactored destroy() in M.Application: Additionally unregister a view from both the event dispatcher and the view manager
- Added setActiveButtonAtIndex() to M.ButtonGroupView
- Removed applyTheme property
- Fixed a bug in renderUpdate() of M.ButtonView
- Added resetSelection() to M.SelectionListView
- Updated jQuery Mobile to 1.0b1 (and adjusted some parts of TMP to work with this new version properly)
- Updated underscore.js to 1.1.6
- Removed the VERSION file, since we maintain the version in m.js -> M.version
- Refactored alert and confirm dialog to have position dynamically calculated => always in center of the screen, even if page is scrolled. Semi-transparent background now has full page size.
- Added getTotalSize, getTotalHeight and getTotalWidth to M.Environment to get total size of document
- Auto-center M.Loader view when show() is called and the loader was hidden before
- Fixed a bug in M.FormView's showErrors()
- Added Dynamic Value Computing to M.TextFieldView
- Added config property and getConfig() to M.Application to access properties of config.json within an application
- Added isSelectable property to M.ListItemView
- Added setView() to M.ToggleView
- Use debugMode property of config.json to only log if we are not in production mode
What is new in version 0.5 alpha:
- Fixed a bug in M.I18N
- Added setValue() to M.LabelView
- Added autogrow-mechanism to M.TextFieldView in combination with content binding
- Refactored event handling (all over and over all)
- Refactored childViews property (it's way more robust now)
- Updated jQuery to 1.6.1
- Updated jQuery Mobile to 1.0b1
- Refactored content binding (1): It now uses target/property (same as events)
- Refactored content binding (2): Added recursion, so now something like 'person.address.street' is possible
- Added method to remove a view's child views (e.g. used in toggle view)
- Refactored dialogs: no more rendered as page but as an overlay animated with CSS3
- Refactored toggle view: do show/hide instead of add/remove
What is new in version 0.4 alpha:
- Updated jQuery to 1.5.2.
- Updated jQuery Mobile to 1.0a4.1.
- Updated M.DatePickerView to work with latest version of JQM.
- Updated M.SelectionListView to work with latest version of JQM.
- Fixed a bug in M.ToggleView.
Requirements:
- JavaScript enabled on client side
- HTML5 and CSS3 enabled browser
Comments not found