wiki:Notes/CrossPlatform

Cross Platfrom Software

For what it's worth ... 'cross platform' tends to mean mobile cross platform for some reason ... not MS, Linux, OSX. Maybe that will change.

Maybe 'cross' platform means 'cross-GUI' platform which simplifies things, but there is all sorts of OS-level stuff going on under the hood, such as events, sockets, streams, all the stuff an application developer doesn't want to or have time to cope with.

Not even quite sure what this page is supposed to do. General information on SW that runs on many platforms ? The 'reality' of running supposedly cross platform SW ? How to kiss a frog ?

http://en.wikipedia.org/wiki/Category:Cross-platform_software

The list of applications is fairly complete ...

The sub-categories are interesting, such as:

https://en.wikipedia.org/wiki/Category:Platform_virtualization_software

https://en.wikipedia.org/wiki/Category:Qt_(software)

Interesting that QT has become a category in itself.

Development

Stray links ... who am I getting into bed with ?

QT and GTK are both strong contenders for the top long-standing, well-developed desktop solutions.

There are a couple of more Pythonic solutions, including variations on TKinter.

QT

See QTApps

GTK

See GTKApps

Kivy

http://kivy.org/docs/gettingstarted/intro.html

Using Kivy on your computer, you can create apps that run on:

Desktop computers: MacOSX, Linux, Windows.

iOs Devices: iPad, iPhone.

Android devices: Tablets, phones.

Any other touch-enabled professional/homebrew devices supporting TUIO (Tangible User Interface Objects).

See PythonGUIApps#Kivy

Tide SDK

Tide SDK was superceded by Tide Kit

http://www.tidesdk.org/

http://tidesdk.multipart.net/docs/user-dev/generated/#!/guide/getting_started

TideSDK is an open source software development kit for creating multi-platform desktop apps using HTML5, CSS3, and JavaScript.

With TideSDK you can also use other common scripting languages such as Python, PHP or Ruby to harness the skills you already possess as a web developer. TideSDK is the best way to create unique desktop apps using simple web technologies.

Source code for the TideSDK project is hosted on GitHub. You can reach support resources including comprehensive API documentation by visiting our site at http://tidesdk.org.

TideSDK also has an extensive global developer community. Thousands of developers use and trust our technology to develop desktop apps. Perhaps one of the most recognized applications is Wunderlist.

http://tidesdk.multipart.net/docs/user-dev/generated/#!/guide/using_python

... libtide is the underlying object bridge in TideSDK. It has its own object system, including its own types. Whenever you call Python from JavaScript or JavaScript from Python, your data will flow through libtide ...

Embedding python in the DOM

Calling out to python:

  <script>
  function use_my_python_data(val) {
     window.alert(val)
  }
  Titanium.include("test.py");
  </script>
  </div>

test.py for the above example:

#!/usr/bin/env python

import os
import sys
import fnmatch
import glob

file_mask = window.prompt("Please enter the file mask to search on", "*.js");

source_dir = "/Users/aland/apps/tweetanium-appstore/Resources"
sdk_dir = "~/Library/Application\ Support/Titanium/sdk/osx/1.1.0/"
filepaths = [] 
contents = "/tmp/Contents"

for dirpath, dirnames, filenames in os.walk (source_dir): 
    filepaths.extend (os.path.join (dirpath, f) for f in fnmatch.filter (filenames, file_mask))

for file_name in filepaths:
    if os.path.isfile(file_name):
        head, tail = file_name.split("Resources/")
        compiler_jar = os.path.join(sdk_dir, "compiler.jar")
        output_file = os.path.join(contents, "Resources", tail)
        # print output_file
        source_file = os.path.join(source_dir, file_name)
        exec_cmd = "java -jar " + compiler_jar + " --js " + source_file +
                " --compilation_level ADVANCED_OPTIMIZATION --js_output_file " + output_file
        my_data = file_name + "\n\n" + exec_cmd;
        use_my_python_data(file_name + "\n\n" + exec_cmd);
        # print (file_name + "\n\n" + exec_cmd);

window.alert("Done!");

The Python module currently uses the following version of Python depending on your platform: * Windows: Python 2.7 * OS X (Lion): Python 2.7 * OS X (Mountain Lion): Python 2.7 * Linux (all distributions): Python 2.7

http://www.tidesdk.org/blog/2013/04/13/human-resources-and-growing-expectations/

The general success of the last TideSDK release has increased expectations for more releases with shorter release cycles.

The last official TideSDK release was Spring 2013, but the last collaborative release was Summer 2014. Some improvements, some activity, one finds a fair amount of Copyright (c) 2012 - 2014 TideSDK contributors scattered around the code. Licensing seems to be OK. There's hope yet ...

https://github.com/tidesdk

Linux

http://en.wikipedia.org/wiki/Category:Linux_software

MS Windows

http://en.wikipedia.org/wiki/Category:Windows_software

Apple OSX

http://en.wikipedia.org/wiki/Category:OS_X_software

Questions

Is there an over-all advantage to generic ( shoehorned-in ) PythonXMLRPC + HTML5 over other 'binary-er' solutions ?

Also See

MicrosoftWindows

AppleOSX

Linux

Android

DWave ... just joking.

JavaApps ... an entire 'solution space' all by itself. #TODO

PythonGUIApps

Last modified 5 months ago Last modified on 12/14/2016 11:08:34 AM