No subject


Mon Dec 24 20:35:25 CET 2012


Store all the client JavaScript in the browser LocalStorage (HTML5) and run it from there, to facilitate offline use (and satisfy RMS concerns on not being able to modify JavaScripts running in the user browser). It is a significant effort but with low priority.

Note that:
- LocalStorage allows a maximum of 5 MB for each web app (each subdomain would have 5MB more)
- It's easy to detect changes in the code (~ md5 of the code), in order to update local JS when needed. 
- It would probably accelerate loading of Kune (although it already uses cache)
- Kune.cc loads http://kune.cc/ws/223A2E37692F8BA25C6399D764605D23.cache.html (1,073,240 bytes) together with the sum of the rest of the sources http://kune.cc/ws/deferredjs/223A2E37692F8BA25C6399D764605D23/*.cache.js (3,883,465 bytes). This is still under the maximum 5MB per web app allowed. If we are generating variants, it could be less once chosen.
- It's possible to change the GWT linker to allow it to compile a single fat JS. E.g.: http://code.google.com/p/google-web-toolkit/source/browse/trunk/dev/core/src/com/google/gwt/core/linker/SingleScriptLinker.java?r=3050

LocalStorage:
- Pairs of key/value (both String)
- It uses a simple SQlite with text entries, editable with Firefox Plugin "SQlite Manager"
- It's rather permanent, but removed when all browser user private data is deleted
- There are examples of people that used it for loading JS sources and execute them, e.g.: http://addyosmani.github.com/basket.js/
- More info in http://diveintohtml5.info/storage.html


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://redmine.ourproject.org/my/account


----==_mimepart_510d3b1f398ee_54f24ecec0e157fd
Date: Sat, 02 Feb 2013 17:13:19 +0100
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-ID: <510d3b1f41c53_54f24ecec0e1591f at leguin.ourproject.org.mail>

<html>
<head>
<style>
body {
  font-family: Verdana, sans-serif;
  font-size: 0.8em;
  color:#484848;
}
h1, h2, h3 { font-family: "Trebuchet MS", Verdana, sans-serif; margin: 0px; }
h1 { font-size: 1.2em; }
h2, h3 { font-size: 1.1em; }
a, a:link, a:visited { color: #2A5685;}
a:hover, a:active { color: #c61a1a; }
a.wiki-anchor { display: none; }
hr {
  width: 100%;
  height: 1px;
  background: #ccc;
  border: 0;
}
.footer {
  font-size: 0.8em;
  font-style: italic;
}
</style>
</head>
<body>
<span class="header"></span>
Issue #497 has been reported by Samer -.
<hr />
<h1><a href="http://redmine.ourproject.org/issues/497">Enhancement #497: Kune Offline: store JS in localstorage and run from there</a></h1>

<ul>
<li>Author: Samer -</li>
<li>Status: New</li>
<li>Priority: Low</li>
<li>Assignee: </li>
<li>Category: Client side</li>
<li>Target version: </li>
  <li>Resolution: </li>
  <li>Tags: </li>
</ul>

<p>From Manuel Freire, RMS and Samer:<br />Store all the client JavaScript in the browser LocalStorage (HTML5) and run it from there, to facilitate offline use (and satisfy RMS concerns on not being able to modify JavaScripts running in the user browser). It is a significant effort but with low priority.</p>


	<p>Note that:<br />- LocalStorage allows a maximum of 5 MB for each web app (each subdomain would have 5MB more)<br />- It's easy to detect changes in the code (~ md5 of the code), in order to update local JS when needed. <br />- It would probably accelerate loading of Kune (although it already uses cache)<br />- Kune.cc loads <a class="external" href="http://kune.cc/ws/223A2E37692F8BA25C6399D764605D23.cache.html">http://kune.cc/ws/223A2E37692F8BA25C6399D764605D23.cache.html</a> (1,073,240 bytes) together with the sum of the rest of the sources <a class="external" href="http://kune.cc/ws/deferredjs/223A2E37692F8BA25C6399D764605D23/*.cache.js">http://kune.cc/ws/deferredjs/223A2E37692F8BA25C6399D764605D23/*.cache.js</a> (3,883,465 bytes). This is still under the maximum 5MB per web app allowed. If we are generating variants, it could be less once chosen.<br />- It's possible to change the GWT linker to allow it to compile a single fat JS. E.g.: <a class="external" href="http://code.google.com/p/google-web-toolkit/source/browse/trunk/dev/core/src/com/google/gwt/core/linker/SingleScriptLinker.java?r=3050">http://code.google.com/p/google-web-toolkit/source/browse/trunk/dev/core/src/com/google/gwt/core/linker/SingleScriptLinker.java?r=3050</a></p>


	<p>LocalStorage:<br />- Pairs of key/value (both String)<br />- It uses a simple SQlite with text entries, editable with Firefox Plugin "SQlite Manager" <br />- It's rather permanent, but removed when all browser user private data is deleted<br />- There are examples of people that used it for loading JS sources and execute them, e.g.: <a class="external" href="http://addyosmani.github.com/basket.js/">http://addyosmani.github.com/basket.js/</a><br />- More info in <a class="external" href="http://diveintohtml5.info/storage.html">http://diveintohtml5.info/storage.html</a></p>


<hr />
<span class="footer"><p>You have received this notification because you have either subscribed to it, or are involved in it.<br />To change your notification preferences, please click here: <a class="external" href="http://redmine.ourproject.org/my/account">http://redmine.ourproject.org/my/account</a></p></span>
</body>
</html>


----==_mimepart_510d3b1f398ee_54f24ecec0e157fd--



More information about the kune-commits mailing list