Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

All considerations aside (if performance/adherence to standards/etc), how can I put to use my knowledge of PHP/JS to build desktop and mobile apps in the fastest way possible?

Some background:

I am looking to build small apps (note-taking, to-do lists, etc).
All my apps share some common set of requirements:

  1. Main platform: web, on a my server or your own (the apps are open-source)
  2. Secondary platform: desktop & mobile. The desktop/mobile app should be able to sync with the web app, but should also be able to work offline.
  3. As little difference as possible between the interfaces on different devices (while of course taking into account the particularities of each).

Ideally, I'd like to support all platforms, but if I have to choose a subset, they would be:

  • Apache/sqlLite for the web
  • Android for mobile
  • Gnome/KDE/OpenBox for desktop

I am an experienced developer in php/js, However, the last time I built desktop applications was ages ago (on visual basic, .net didn't exist yet). I've built my share of AIR apps, but I do not want to rely on a non open-source technology (if possible).
My problem is, I am one man, and short on time, and I would like to leverage my knowledge in PHP/JS and try to do the least amount of work possible to port my apps to different devices. Performance is not an issue since most of the apps I am talking about will simply move text around, for a few users at a time.

That is why I am not asking "how" to build desktop apps, but "how to build them using what I already know".

More specifically:

  • How do one store data in a desktop/mobile app
  • How do I wrap my website so it opens as a "native" app?

I am aware of projects such as QtQuick, but QtQuick targets symbian and maemo, which are only of secondary interest to me. I have also heard of Appcelerator, but haven't come around to test it yet (is it what I am looking for?).

share|improve this question
1  
Phonegap apparently compiles html/css/js down to native android / iphone. As for desktops tell your users to open a web browser with HTML5 offline support and things like web sql. – Raynos Jun 18 '11 at 14:49

3 Answers

up vote 1 down vote accepted

That is why I am not asking "how" to build desktop[ or mobile] apps, but "how to build them using what I already know".

Have you not considered building web-based apps that work in a mobile? The libraries for doing so are pretty rich.

share|improve this answer
I know...I build web-based mobile apps daily. My concern here is that I need my apps to work offline. – Xananax Jun 18 '11 at 9:35
There are tools for that too, in HTML5. – Denis Jun 18 '11 at 9:39
Thank you for the pointer. I had heard of HTML5 data storage capabilities, but I did not know they were so easy to use. But given that I create a web app that uses them, and that has special views for mobile, how do I publish this as a standalone, no-internet-connection-needed app for mobiles & desktops? – Xananax Jun 18 '11 at 10:13
There are a couple of special headers to keep things cached in the browser. Users can then use the app while offline if needed. – Denis Jun 18 '11 at 10:38

You can use your html/js skills with Adobe AIR for desktop and mobile development. I remember reading somewhere that Androids are preloaded with AIR runtime.

You can also try out xul + xpcom to leverage your js skills.

share|improve this answer
I know, but I would not want to rely on a closed technology. Furthermore, air linux has been discontinued, afaik. – Xananax Jun 19 '11 at 16:09

Last time I checked the entire Palm's (or is it HP now?) WebOS is based on HTML/CSS/JS stack. That's a bit risky market since the platform is not really popular... but hey... you never know right?

share|improve this answer
Sometimes you know... – configurator Jul 18 '11 at 20:48

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.