User login

Unuplugged: a Drupal offline synchronization module (idea)

Searched words: 
offline desktop laptop web synchronize

Initial vision:

Unplugged

The Drupal synchronization module

The Drupal Synch module

  • knows that when it last synched you are at node 253, user 43, comment 422, etc...

Logs, configuration settings, installed modules etc. could - should - be one way, from the server to your offline Drupal.

offline to server and back

Drupal 6 dumps the sequences table: implications?

Drupal 6 has the database handle sequences. This may make it harder for Unplugged to do its thing.

Not really though.

Just have to get the next available ID (apparently you start by sticking something in the node_revisions table rather than node... chx explains in one of his two threads where he replaces sequences with last insert id).

But anyway, once you have that, you just stick everything into the new database with that number.

This change does mean that there's no option to use alternative numbering sequences for different sites (give one odd and the other even, or prefix one with 1,000,000, one with 2,000,000 etc.) so that they can be merged as equals, but that approach probably would have had trouble anyway.

Related Tools

Drupal Unplugged: Using Drupal offline, the need to make Drupal a desktop application that works with other desktop apps

Do things the Google way?

Google Gears Breaks Cover

Gears is a browser plugin that provides websites with the capability to store lots of information in a secure manner on your computer. It incorporates a javascript API, and a lightweight database (I believe they are using SQLite).
What might you use it for? Running web applications offline.
It’s a very difficult technical problem, and it would appear Google have just made it a much easier problem through the Gears plugin. The applications are many and obvious - Google Mail, Google Calendar, Google Reader, Google Docs, Google Spreadsheet, Google Notebook… the list goes on. Imagine if you could still use Google Mail when your computer is not connected to the internet… or write a document with Google Docs. [...]
To top it all off, the entire thing is open source. You can see how they did it, and they are bending over backwards to help you use it too.

http://gears.google.com/

Enabling Offline Web Applications

Google Gears (BETA) is an open source browser extension that enables web applications to provide offline functionality using the following JavaScript APIs:

  • Store and serve application resources locally
  • Store data locally in a fully-searchable relational database
  • Run asynchronous Javascript to improve application responsiveness

More on that: http://codinginparadise.org/weblog/2008/02/pubtools-offline-enable-content-in.html

Do things the Ruby on Rails way?

wiki . joyent development:

Joyent Slingshot allows developers to deploy Rails applications that work both online and offline (with synchronization), and with drag/drop into and out of the application as in a standard desktop application. For a high level overview of the design goals and the basic idea behind Slingshot, head over to Joyeur to read in more detail about what we’re trying to do.

Sounds like my idea for a Drupal Unplugged module is already born in the Ruby on Rails world...

Is there already a Drupal way?

Deployment module
http://drupal.org/project/deploy

Resolution

Comments

Current thoughts on Drupal Unplugged

As for offline synchronization for this and all other Drupal goodness available offline...

I think probably the best / simplest solution is just the synchronization -- http://drupal.org/project/deploy I guess is farthest along in this direction -- though there are other approaches, such as Kathleen Murtagh's http://drupal.org/project/dbscripts

Then run Drupal not as a massively converted Gears app or Drupy (Drupal in Python) or anything else, but just embedded in an apache/mysql/php self-installer, a la Bitnami: http://bitnami.org/stack/drupal

Post new comment

The content of this field is kept private and will not be shown publicly.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.
  • You can use Markdown syntax to format and style the text. Also see Markdown Extra for tables, footnotes, and more.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <blockquote> <small> <h2> <h3> <h4> <h5> <h6> <sub> <sup> <p> <br> <strike> <table> <tr> <td> <thead> <th> <tbody> <tt> <output>
  • Syntax highlight code surrounded by the {syntaxhighlighter SPEC}...{/syntaxhighlighter} tags, where SPEC is a Syntaxhighlighter options string or "class="OPTIONS" title="the title".
  • Lines and paragraphs break automatically.

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.