So, that brings us to scratchpad...
The initial goal of the project was to replace an existing notepad like feature from another tool. The concept was simple: allow users to keep notes in a single place within the application. It was typically used to copy and paste items of interest during their workflow, so that they could then assemble the pieces together at the end of their shift to publish a report, or to pass on to the person replacing them.
It totally made sense. While I was in Iraq, I would do the same thing. I worked at a desk with one other person, and we would always have a notepad window open where we would capture relevant information while the other person was out of the office.
And so ScratchPad was born. It initially started out as a simple textarea; one with a high z-index, so that it could be toggled over the rest of the display. We added a "Save" button, and wrote the data out to a php script on our server to persist the data in our MySQL database.
Once we introduced EXT, we quickly realized that we could expand on the capabilities of ScratchPad:
- Enable multiple scratchpad files through a tabbed interface
- Enable the ability to rename files
- Open files
- Share files
Just recently, we have talked about some of the additional capabilities that we would like to add, including the ability to have different text editors (wiki format, syntax highlighting, etc). The way the input box currently works, it uses an iframe behind the scenese to store the raw HTML, and then displays that data for the user to get a quick and dirty WYSIWYG editor.
So, we have several tasks that we are working on, but the possibilities are almost endless. Eventually we would like to create a ScratchPad widget, that can be included with an extremely lightweight javascript file, and several options for back-end data storage, or even cookies or google-gears to persist the data.