Don't know about you but I like to have at least one "pet project" on the go at any given time. Something for me to mess about on when I get bored during the day (yeah, right) or late at night when all the kids are in bed.
For a few days now I'd not had a project and was getting a bit restless. Then I had a brainwave - how about a Flex version of the good ol' Notes Workspace.
After a day or two's worth of spare time spent I had come up with a working prototype:
Have a play and see what you think. Try the following features:
- Drag and drop icons
- Double click icon to open the database
- Right click workspace to add a new icon
- Right click workspace to change background
- Right click icon to remove it
Note that the icons you see are the actual Icons for the database; loaded via the /$icon URL. Change the icon in Designer and it updates in the Flex version (well, when the cache updates).
Note that you need "reader" access to the DB to see the icon!
A good customer of mine is moving away from Lotus Notes (client) on their desktops but keeping the Domino server and migrating the Notes apps to the web. One of the options I've suggested to them is using a Flex framework to ease the migration.
To ease the transition for the user I had the idea of providing some familiarity in the new environment. Whether they want a reminder of the Notes client or not I don't know, but it seemed like an interesting challenge and has been a fun learning experience so far.
Whether I'd actually suggest its use or not I don't know. I just thought it might make a nice portal.
Taking it Further
The glaring omission in this prototype is that you can't add your own icons. For now it loads a pre-defined list of icons from the backend DB. For it to work the user really needs to be able to add their own and remove the ones they don't want. It also needs to remember these icons and their positions.
And what about the open/add database dialog? This is something I'll add before I consider this "finished". But should there be a pre-defined list of web-enabled/migrated applications to choose from or should it just browse all files on the server? Should it allow the user to browse to other servers?
Some other considerations:
- Stacking icons for replicas -- does that apply on the web.
- Unread count. Can this be done on the web and/or does it apply still?
- Is the option to show server name applicable?
- Would it be worth adding tabs with custom colours - ala Notes.
- Mutli-select and move.
- Keyboard navigation?
- Might be nice to be able to click to select and (re)move.
At first I thought this would be simple then, the more I thought about it, the more complex it became. That's good though, right? A pet project should know no end after all.
Taking it much further I guess you could even provide a tool to let the user migrate their existing Notes workspace to the new Flex one.
For now it's just something nice to mess about with. Maybe one day you'll be able to visit it and reminisce of the good old days...