UI and platform choices for developing desktop widgets - desktop

I've been asked to build 'widgets' that let users of a web application install a desktop, or web-based widget which will provide:
Notifications of new content.
Personalized access to key performance indicators
I'm looking for some information to inform our requirements and design discussions.
On the desktop you can target the Vista Sidebar, or on OS X there is the Dashboard, as well as others. From the web perspective you can target iGoogle and others. If I was to start by developing for the widget framework that had the greatest number of users, which would I choose? Does anyone provide statistics on the number of users?
The client would prefer to provide a richer experience for end users and I think this could be achieved using a desktop widget framework. However there would be some questions around the number of users that we can hit with any single framework (eg. sidebar). What technology or framework could I target that gives me cross-platform compatibility? Should we embed Flash?
Rather than live within a widget framework, I was going to suggest the creation of a standalone application. Are there any frameworks that help facilitate the creation of widget-like applications?
Target platforms:
Windows (Windows XP and newer)
Apple (OS X 10.4 and newer)
Linux (nice to have)

You can put a glance on Adobe Air.
It allows a cross-platform development in Flash/Flex or HTML/JS.

Related

How to build APK (signed) from hybrid app made in Framework7

I've experience in building native android applications. But I'm completely new to hybrid application development and Would like to use Framework7.
I'm starting to use it. I don't know how to build the project and get an install-able file (or for distribution in playstore).
Any help is appreciated.
Cordova is a good way to start.
When I used to develop Hybrid apps, Cordova was the way to generate APKs.
I really enjoyed it, since it has a lot of Plugins, like FireBase Cloud Messaging Plugin to receive notifications within your hybrid App. It's more than a simple WebView App.
Apache Cordova is an open-source mobile development framework. It allows you to use standard web technologies - HTML5, CSS3, and JavaScript for cross-platform development. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's capabilities such as sensors, data, network status, etc.
Use Apache Cordova if you are:
a mobile developer and want to extend an application across more than
one platform, without having to re-implement it with each platform's
language and tool set.
a web developer and want to deploy a web app that's packaged for
distribution in various app store portals.
a mobile developer interested in mixing native application components
with a WebView (special browser window) that can access device-level
APIs, or if you want to develop a plugin interface between native and
WebView components.
Here are all the steps needed to start with Cordova https://cordova.apache.org/docs/en/latest/guide/cli/index.html
Also, I used to follow these steps to generate a signed APK so it's possible to launch it on Google Play.
How do I put my cordova application on the android play store?

How to create Mobile API's in OSCommerce?

I want to create Mobile App using my os commerce store. Is there any extension for API's integration in OS Commerce.
I am not aware of any extension API that exists as you describe.
There is a responsive version of OSCommerce;
GitHub
Maybe you could consider upgrading to that version as it uses bootstrap which is 'mobile first'.
Bootstrap offers a quick professional solution to designing sites for all display sizes, without the need for multiple websites.

Will WinRT be usable in Desktop Apps (no Metro style)? [duplicate]

Can non-Metro Windows apps (ex: Explorer) be built with the new WinRT, or must they still be Win32 based?
I asked this during the 'Ask the Experts' session at //Build/. The answer was "Yes, within reason. Not all of the WinRT api's will function when called from desktop apps - for example any metro specific ones will fail. No explicit list of which ones work from desktop (non-metro) apps is available."
Edit:
It appears that the documentation has been updated to provide a list of WinRT api's available from the desktop.
From "Dev Center - Metro style apps"
A sticky posted by moderator on Thursday, November 03, 2011 1:16 AM
We have received a number of inquiries in this area.
The documentation will be expanding as the Windows 8 project
progresses to include more API specific details. It is possible to
use WinRT from Desktop applications. WinRT APIs may be tied to Metro
style apps, Desktop apps or potentially available to both. The
documentation will list which environments (Desktop, Metro style or
both) a given API works in. Note: Custom WinRT components are only
supported in Metro style applications. They are not supported in
Desktop applications.

Host a c++ desktop application on a webpage

I am having a desktop application which having a UI interface made in Qt linked with a library which is doing all the calculation stuff. Values from UI is taken and pass to the API's in the DLL to get the output which is shown on Screen.
Now i want to do the same thing by transferring my application UI to a web page so that people can access the tool from anywhere without any installation process.
I want to retain my c++ DLL code so i don't have to do a lot of work. I am thinking of just converting this DLL to a C++ server by any communication Process(Sockets). I want to host this application on my company's website. (We have to make the website also so we are open to any set of tools).
I want to know what will be the best set of tools to do this stuff. Also there will be lot of data exchange between the webpage and server so the wholething should be optimized also. I goggled a bit and find stuff like silverlight and ASP.NET, But i am still not very clear which option will be more suitable.
I am a c++ programmer with no web application development experience. I am open to learn any new technology.
Thanks
Why not use Qt on the web directly? There are several projects like this one: http://qtwui.sourceforge.net/
There is a netscape plugin that will host a QT application and an ActiveX control wrapper on the QT website. You could use one of those to wrap your application. Note that this approach would require the user (or their administrator) to download and install the plugin.
An alternative approach might be to run your application through a remote desktop such as XVNC, NX or an RDP based layer. IIRC browser based remote desktop clients are available for most such protocols.
A few options:
pick a messaging/queue implementation (like http://www.zeromq.org/) and provide a service
implement a Windows Web Service if you want to be more enterprise friendly: http://msdn.microsoft.com/en-us/magazine/ee335693.aspx
I would not expose the implementation on the internet. Enough to have a simple buffer overflow and the machine can be taken over quickly. Adding a layer between the app and the web provides an easy way to validate input, access, stats ...
You should be able to use your DLL from an wt or cppcms application. Then you do not have to learn something new and can just use C++.
The way I'm currently doing this is with Boost.Python + django

Web vs Desktop Development (Online vs. Smart-Client)

I work at a company with a large SAP investment, and we also have dozens of large .Net systems (mostly internally for engineering systems), and Java platforms (mostly for external web applications). As such, we have large development shops on ABAP, C#, and Java EE.
We have decent standards for which platform to use in which domain, but we don't have a lot of clarity around when to use web UIs and when to use desktop UIs.
I've seen some excellent research on this topic in the past (like this), but I'd like something a little more structured
I'd like to build a decision tree based on best practices to help with this question.
Some of the criteria I've seen in the past include:
Is the application targeted to users
with different OS configurations?
Does the application require OS-type
functionality for sorting and editing
data? (I know that AJAX /
asynchronous JS has made possible
much richer desktop-like
functionality to web applications,
but some would argue the desktop is
still king in this area)
Will a web application be able to
provide the availability,
responsiveness, clarity, and utility
that can be delivered with a desktop
application?
I think we are seeing the separation between Web and desktop applications softened quite a bit. Rich internet applications (with Flex, Silverlight, Ajax) started this trend, and WPF with XBAP is taking the user experience of browser-based applications to another level.
It is becoming a bit more involved to have this argument, because there are now more flavors in the spectrum between Web and desktop apps.
Some more questions to ask:
What is the primary objective of the app - data manipulation, or data viewing?
What is the number of data points/records that need to be viewed/edited together on one screen?
What is the organization's IT infrastructure look like? Will they be able to accomodate new deployment models?
Will users work with a central database from remote locations?
Does the organization have a VPN infrastructure of off-site users, and how do users authenticate?
Are there existing applications that the same user group is working with, and how are these applications deployed?
Does the application need offline capabilities?
Given that they are so different, what is the skill set of the development team for web and desktop APIs?