Enterprise Cross-Platform Apps Development Made Easy
Built upon the solid foundation laid in the initial version, Crosslight 2 is expanding its already powerful toolset with over 200 new features packed in dozens of new services and components that work reliably across all the supported platforms. Crosslight 2 delivers great business-oriented features including comprehensive data and entity services, offline support, data synchronization, timezone management, authentication, social integration, push notifications, and much more.
With Crosslight 2, you can now build cross-platform enterprise mobile apps that leverage advanced capabilities in dramatically less time with very minimal code, shaving off months of your time table.
This page guides you through the new features and enhancements available in Crosslight 2.
Click the links below to jump to the section of your interest.
Crosslight 2 at A Glance
Crosslight 2 is the industry's next-generation toolset for cross-platform apps development which offers everything you need to build great, high-performing enterprise-class mobile apps. It delivers the most advanced data access components and entity services that enable you to easily consume data from remote services, store them in a local storage, query the pending changes, and synchronize them when a connection becomes available. It also offers a comprehensive range of enterprise services such as reporting services, authentication services, integration with social networks and much more. This release also includes a powerful enterprise app framework that leverages modern design patterns such as repositories and model services.
The following diagram overviews the new range of services, components and features available in Crosslight 2.
Crosslight Enterprise App Framework
Building full-featured business apps is no longer rocket science – thanks to the new enterprise app framework shipped in Crosslight 2. Built upon Crosslight's foundation and services, the app framework includes a multitude of time-saving features designed for business apps such as remote data management, identity management, integration with social networks, authentication, push notifications and much more. The app framework is designed with modern design patterns that emphasize clear separation between domain model, data access, and entity services. To that end, the app framework includes pre-built model services, repositories, and entity services that you can easily consume in your apps. Learn more.
Data Access Services
Enterprise mobile apps typically require access to data located in a remote server. Crosslight made data access a breeze with its new, powerful data access services. Optimized for performance, the RestClient component lets you easily fetch data from any REST-enabled services. Data modifications such as insert, update and delete are supported as well. It also sports Intersoft's flagship query descriptor component which allows you to create dynamic queries with sorting, filtering and paging capabilities using intuitive, developer-friendly API – so you don't have to write tedious, error-prone query string. Learn more.
Advanced Entity Services
While data access services provide capabilities to read and manage data on a remote location, a typical enterprise app commonly has much more complex requirements such as data change tracking, undo changes on cancel, perform updates in batch to reduce client-server round-trip, upload files along with data changes in a single transaction, and two-way data synchronization.
Crosslight sports an advanced entity services which was designed to address many of these key enterprise scenarios. Building on the latest technology such as REST, WebAPI 2, MVC 5, and Entity Framework 6, Crosslight Entity Services provides complete features for entity management such as change tracking, reject changes support, and automatic merging support. Learn more.
Entity Designer for Visual Studio
In addition to the client data services, Crosslight also includes an intuitive entity designer which is fully integrated to the Visual Studio, supporting both version 2012 and 2013. The entity designer makes data modeling easy, enabling you to generate domain models from your back-end in a simple click. In addition, the entity designer also automatically generates MVC controllers and data repositories that conform to Crosslight Enterprise App Framework. As the results, no code writing is necessary – not even a single line. Learn more.
LINQ-enabled SQLite Services
Mobile devices typically have relatively limited and unstable connection depending on the current data channels. To avoid data lost and unexpected crashes, your apps should be designed to support offline data storage which allows users to continue using the apps without significant interruption. Crosslight makes it easy for you to implement offline data storage in your apps – thanks to the new, robust SQLite services.
Unlike other SQLite implementation, Crosslight SQLite is built from the ground up with modern design patterns to support advanced features such as asynchronous API, LINQ, and automatic changes and version management. And the best of all, you can consume SQLite directly from the ViewModel in the portable shared project, making it the industry's first cross-platform SQLite implementation. Learn more.
Enterprise Reporting Services
With more enterprise goes mobile today, viewing business reports in the apps have increasingly becoming a must-have requirements. However, reporting is a complex subject since there are many factors to take account, from the reporting engine to the reporting authoring and design tools – not to mention the rendering quality in various devices and formats.
Intersoft provides a comprehensive reporting solution, ClientUI Reporting, which includes a rock-solid reporting engine with flexible C# style scripting support and a beautiful, user-friendly report designer tools. With the new reporting services supporting each native mobile platform, you can now access ClientUI reports right in your Crosslight apps. Learn more.
Push Notification Services
Push notifications is one of the most attractive and useful features in mobile apps which provides a direct way to reach users. However, the implementation requires extensive knowledge about how push notification works which typically involve a lot of works need to be done in both client and server side – not to mention the technical difficulties and API differences in each platform.
Crosslight 2 arrived with a universal cross-platform push notification services that lets you implement push notifications in just a few lines of code, shaving months off your time table. The universal push services comes with both client and server side components. All you need to do is to configure the settings and register the services – no tedious platform-specific knowledge is required. Learn more.
Social Network Services
Built from the ground up, Crosslight's social network services provides direct access to the world's most popular social networks such as Facebook and Twitter without dependencies to third-party SDK.
Written in 100% managed code, this means that you can access various social service functions right from the ViewModel – giving you the utmost flexibility and seamless integration to these social networks. Key features include automatic sign-in with existing native accounts, authenticate with user interface with web fallback, posting feeds, and getting friends list. Learn more.
Async Image Loader Services
Crosslight makes working with photos and images really easy, thanks to the blazing-fast image loader services. Image downloads are smartly queued and performed asynchronously in dedicated background threads for the best performance.
Designed with screen virtualization in mind, the image loader works perfectly with view components that support items virtualization such as table view in iOS. Other key features include automatic image caching on successful download, smart cache expiration detection, auto retry download on weak connection and more. Learn more.
More Services
Crosslight 2 ships with even more services that you can easily consume in your apps. These services are built on top of Crosslight foundation which work like extensions or plug-ins. Most of these services are designed with elegant and straightforward API for ultimate ease-of-use. In addition, they are automatically initialized as soon as they are referenced to your apps – so you don't have to any initialization code.
- Local Storage Services – Easily work with files that are stored in the local device such as reading and saving text or binary files.
- Resource Loader Services – Load any remote resources asynchronously, optionally tracking the download progress.
- Resource Cache Services – Save downloaded resources to local cache with flexibility to store in either memory or disk.
- Authentication and Cryptographic Services – Includes pre-built authentication services such as OAuth1, OAuth2, NTLM and more.
- Account Store Services – Load and save account information with encryption/data protection support.
New UI Components
More than just new frameworks and services, Crosslight 2 ships with a vast array of new UI components which enables you to create great mobile experiences in dramatically less time. Since Crosslight targets 100% native output, all UI components are built with native API on each platform. As the result, Crosslight's UI components conform to the respective platform's design guidelines thus giving your users the experiences they expected.
The new UI components introduced in Crosslight 2 are highly focused on use cases and key scenarios typically required in business/enterprise apps such as an ultra flexible drawer navigation and a versatile master detail view. Many key features for business apps have been addressed in this release such as the introduction of pull-to-refresh and incremental-loading user experiences that are consistently designed across iOS, Android and Windows platforms. In addition, all UI components were engineered with built-in ViewModel support and conform to the MVVM design pattern for maximum separation of concern.
The following sections highlight the new UI components available in this new release.
Full-featured Drawer Navigation
Drawer navigation has increasingly becoming one of the most popular design patterns in mobile apps today. Not only does it give mobile apps a professional look, it is loved by most users thanks to its simple yet intuitive user experiences. Crosslight has introduced a beautiful and flexible drawer navigation for both iOS and Android since the previous version. In this release, Crosslight adds even more features which makes it the industry's most flexible and feature-rich drawer navigation. In addition, the Windows Phone version of drawer navigation is now made available in this release. Learn more.
Advanced Master Detail View
As a toolset targeting business apps developers, Crosslight is continuously improved with advanced components and time-saving features that help you achieve key business scenarios easily. Introducing the new master-detail view component, you can now display data and details in a single, user-friendly presentation. The master-detail view, available for both iOS and Android, is fully integrated with the Crosslight navigation services so that you can easily upgrading your existing Crosslight apps by simply reusing the existing ViewModel and data binding definitions. The component includes built-in features such as automatic rotation handling and smart resources management. And the best of all, the master-detail view can be hosted in any view containers such as in a drawer navigation, giving you the most flexibility to display data the way you prefer. Learn more.
Pull-to-Refresh
Crosslight now includes the highly popular pull-to-refresh component for iOS, Android and Windows Phone. Each component is designed according to the latest design guidelines of the respective platform. For instance, the pull-to-refresh for Android uses the progress-bar style approved by Google. With built-in MVVM support, this means that you can enable the pull-to-refresh behavior right from the ViewModel – with just a simple property set. Learn more.
Incremental Loading
As data grows big, loading them all from remote server will be a sluggish experience to users. A common practice is to load data in chunks where only a small amount of data is initially loaded, then subsequent data will be incrementally loaded when users demand. Called incremental loading, this feature is built into Crosslight's data framework including both the data services and data view layer. Enabling this feature is just a matter of a few property sets. Learn more.
Async-ready Image View
Built upon the rock-solid image loader services, the image view components in Crosslight have been enhanced to support asynchronous image loading from a remote server. Optimized for UI virtualization, the image view automatically downloads an image when requested and gracefully abort the download as the view has been scrolled off the screen. All you need to implement it is a simple binding definition – not the typical hundreds line-of-code. Learn more.
Improved Form Builder
Crosslight Form Builder provides the easiest way to create rich data entry form for your business apps. In this release, the form builder has been significantly enhanced with many new features such as enum support which will be automatically rendered as list selection editor, multiple visibility binding support, dynamic form definition through API, and the ability to specify the form metadata per ViewModel. The existing editors also received significant enhancements. Learn more.
New Project Templates
Crosslight Project Wizard is a time-saving tool that lets you quickly jump start your next Crosslight apps targeting iOS, Android, and Windows platforms. Integrated to Visual Studio, the project wizard has been significantly improved in this release, including support for Visual Studio 2013 and revamped assembly references to enable better project sharing model optimized for multiple development environments, such as Visual Studio on Windows and Xamarin Studio on Mac.
In addition, two major project templates have been added to the wizard which leverage many of the new services and components introduced in this release.
Business App Template
The business app template is the most comprehensive and full-featured project template designed for business and enterprise scenarios. It incorporates many of the new services and components in this release such as data access and entity services, push notification services, social login integration, user registration and identity management, and more. In addition, it leverages the new drawer navigation with pre-built views – all designed with professional looking theme. With the new business template, you can jump start your next-generation enterprise apps in just a few minutes. Learn more.
Navigation Drawer Template
The navigation drawer template is available in two styles, left-side drawer and left-and-right drawer. This template lets you quickly create drawer navigation apps with a clean and minimal design. Supporting iOS, Android and Windows Phone, this template includes several pre-built views that you can use to put your content right away.
New Samples
With over 200+ new services and features available in Crosslight 2, it would be time consuming to explore and figure out how each feature works. To help you quickly learning these new features, a new range of samples have been made available to demonstrate the usage of the new features. The samples also serve as guidelines and best practices to implement each feature in your apps that comply with the Crosslight design patterns.
Inventory WebAPI Sample
The initial Crosslight release shipped with an Inventory sample that uses static XML file as the data source. This release delivers the WebAPI version of the Inventory sample which leverages many of the key features introduced in Crosslight 2 such as data access to a WebAPI service, asynchronous image loading, pull-to-refresh, and incremental loading. This sample has also been revamped to use the new Crosslight Enterprise App Framework which streamlines most of the data-related functionality. As the result, you will find the new sample to be much easier to learn as it reduces overall code by 40%. It is recommended that you use the enterprise design pattern as the guidelines for building your apps. Learn more.
Master Detail View with Drawer Sample
This sample demonstrates how to implement the new master-detail view with a single user interaction logic targeting iOS and Android platforms. The sample shows the master-detail usage in a drawer navigation. It demonstrates two variants of master-detail scenarios that are supported by the component. The first is Facebook-style master detail on the iPad, and the second is three-level navigation that involves combination of self and detail navigation. You will also find the deep attention to details implemented in this sample such as how the sample supports both phone and tablet version with a single user interaction logic but with different view container. Learn more.
Reporting Services Sample
This sample demonstrates the new Reporting Services introduced in this release. It provides the guidelines to implement the ReportViewModel and consume the reporting services to show a report from within the shared ViewModel layer. The reporting service connects to the ClientUI report server which processes and renders the report. Built with three-tier architecture, the sample comes with a host of report examples to give you some insights about the reporting engine capability. Learn more.
Project and Task List Sample
This sample demonstrates a fully functional task list app that works reliably across multiple platforms such as iOS, Android and Windows Phone. The sample highlights the best practices to implement data access and two-way data synchronization services using Crosslight Enterprise App Framework. It also demonstrates other interesting key features such as domain modeling with entity services, local data repository, offline data support, data changes tracking, and more. Learn more.