Coding in Paradise:
Permanent Client-Side Storage for AJAX Applications (Part 1)
On Coding in Paradise today, there's a quick new post from Brad about his work to make a permenant client-side storage system for Ajax-enabled applications.

Just a quick note: I've pretty much finished the permanent client side storage API I've been working on for O'Reilly. It uses a hidden Flash file, wrapped with a nice JavaScript API, to give AJAX applications the ability to store long term information.

I'll post a beta on Monday. It's all open source and opens up the possibility of creating some very interesting web-based applications that weren't easily possible before. I'll be using this in my AJAX consulting (including the history and bookmarking framework I created last week) if companies are interested.

Betwen this and the bookmarking/history framework that he's worked up previously, there's some very cool things coming out of his area - some things that could change the way a lot of the Ajax applications out there work...

Share your thoughts on " Permanent Client-Side..." (3 comments)

<< Have a commment to share? Speak up now! >>
My homepage
by Anonymous :: 09.20.2006 00:42:26
Well done! |

My homepage
by Anonymous :: 09.20.2006 00:42:13
Good design! |

More details on client side storage API
by Anonymous :: 10.02.2005 20:17:53
Thanks for the comment and post. On Friday I stored over 10 megabytes into the client side storage API; it was fast and reliable. After a user gives permission, a given web site can store as much information as a user gives permission. The API is straightforward; it looks like a hash table, with simple put and get methods. Developers can put entire JavaScript objects into permanent storage; under the covers I serialize the objects into strings and store them, so developers can work at a higher level. For sheer, large scale data, however, like XML files that are multimegabyte, you can also store simple strings, which are faster.

I'll be posting the code next week; I have a bit more fit and finish work to do, including more QA, detecting and installing Flash if its not there, and so on, but you can get an early peek at the code over at Check out the test file at; it is a bit cryptic, more focused on helping me test thigns, but basicly it allows me to test various things, like storing large amounts of data and ensuring that the Flash popup that appears after users store more than 100K is centered in the middle of the screen even if the user has scrolled down (surprisingly, this was one of the hardest things to get working).

The segments field in the test file controls the amount of data that is saved; set it to a large number to save multimegabyte files. You will see a Flash popup appear in the middle of the page asking the user permissin to save data beyond 100K. Press Approve or Deny. The AJAX application programmer gets callbacks telling them if their put() request was approved.

Only Firefox and Internet Explorer are supported at this time. I still need to do more extensive testing so tell me if things break. The code is also under a BSD license.

I'm looking for a good name for the framework if anyone has any ideas.

 All content copyright, 2005 :: [email protected]