"Red Westie", Copyright Ellery Armstrong, Milk Teeth Photography, Used With Permission
On Monday we released Tomboy 0.15.1, the latest development release on the road to 1.0. It features a lot of the same fixes from 0.14.2, and some other improvements:
- Preview of new Web Synchronization add-in
- Work around problems on Windows caused by having multiple GTK+ applications modify PATH
- Search for phrases by surrounding them with quotes, save the width of the Notebook pane, and other improvements to the search UI
- Better HIG compliance in synchronization UIs
- All the same fixes from 0.14.2
- And much more!
I'd like to talk to you a little bit about this "Web Synchronization" add-in. From a feature perspective, the biggest problem with Tomboy has been how difficult it is to synchronize your notes between multiple computers, and to share your notes with your friends and colleagues. We have note synchronization but it's hard to set up unless you have your own server. You can share notes with Giver, but that has its limitations as well. And how do you view your notes when you're on a device without a Tomboy notes client?
A long time ago I blogged about how great a free "Tomboy Online" web service would be as a fix for these issues, but I never had the time to follow up on it. Until now.
Meet Snowy. Snowy is a project started by Brad Taylor to bring your Tomboy notes online. It's "Tomboy's best friend on the web", as Brad says. Here is what you can expect from Snowy in the coming weeks and months:
- "Tomboy Online" - a free hosted service (running Snowy), where anybody can create an account for securely synchronizing their notes.
- Fine-grained privacy settings to let you mark your notes as public, private, or shared with specific friends.
- Edit your notes directly in your browser!
Brad started Snowy in his spare time, and recently our team at Novell had a Hackweek at our disposal. So last week, Brad and I decided to really get this project off the ground. It is still an extremely new project, but we feel it's far enough along to solicit feedback and contributions from the community. Some basic facts about the project:
- Snowy is AGPL-licensed. I firmly believe that our community needs to step up and start offering competitive AGPL web services. If we want to stay relevant, that is!
- Snowy is developed in Python on the Django web framework. Most people who expressed an interest in working on this were most familiar with Python for web apps.
- Snowy is developed in GNOME git. If you watch the commits list, you've no doubt seen the recent activity.
- Snowy is easy to deploy on your personal server. If you don't want to trust Tomboy Online with your notes, you can still use Snowy to give yourself web access to your notes, or just to provide a more convenient way to synchronize.
Snowy is brand new! I hope in the screenshots you see the potential, but I'm sure you also see how much room there is for improvement.
What works:
- Tomboy<->Snowy note synchronization
- Online note-viewing
- User registration
- Database administration and other fancy Django stuff
Where we need help:
- Authentication review, OAuth
- HTML/CSS/JS to prettify everything
- Design and implement all that cool note-sharing stuff
- Little features like copying a friend's note into your collection, or downloading/emailing/printing any note straight from your browser
- Security audit
- Your ideas!
You may be wondering how Snowy and Tomboy communicate for synchronization. I will talk about this more in a future post, but we have designed a REST API for web synchronization. This API is easy to consume from the client end, and easy to implement on the server end. This means we should have no trouble adding sync capabilities to Tomdroid and other Tomboy note clients. It also means that if you don't like Snowy, you can create your own web service that implements the same API, and still use the same web synchronization add-in included in Tomboy.
We still have a lot of work to do to make synchronizing and sharing your Tomboy notes effortless and fun! Outside of Snowy, here are some things we'd like help working on:
- Automatic background synchronization in Tomboy
- Web synchronization support in Tomdroid
- More features in the web synchronization add-in, like:
- One click to get from your Tomboy note to its Snowy page
- Control your sharing preferences for a note without opening your browser
- Easy access to friends' notes
- One click to get from your Tomboy note to its Snowy page
By the way, if you plan on using Tomboy 0.14.x for a long time, you'll be able to use the Web Synchronization add-in, too! When we launch Tomboy Online, downloads will be available for 0.14.x users on all platforms.
Stay tuned for more updates, and a demo server for everybody to play with!
This post brought to you by the Tomboy Blogposter add-in.