Slingshot is a platform, developed by Magnetk and Joyent —which allows Rails developers to easily create hybrid web/desktop apps with ease and flexibility. It has already been takes as competition for Apollo. Apollo is a great framework and certainly powerful. It will meet with great success. The Wikipedia entry describes Apollo as:
Slingshot has the same goals with the key difference being developers are allowed to employ existing applications with no re-write necessary.
- Let developers write hybrid desktop/web applications with Rails. Rails is elegant, well designed and allows for rapid development and deployment. It’s also much easier for a novice to learn than Cocoa or C# and it enforces some good decomp and design.
- Allow Rails developers to create more robust applications that have a comparable user experience to traditional desktop applications. Drag in and drag out of data/files/etc, for starters. In the future, filesystem access to remote data [like SftpDrive…]
- Allow Rails apps to run offline with simple and transparent data synchronization
- Lightweight and customizable – we want you to make the decisions about exactly how your app runs, not us.
Offline mode is cool, so is integration with traditional desktop apps, but it is all somewhat worthless without an easy way to synchronize data with your live server. Slingshot data sync is designed to be extremely powerful while still being lightweight and flexible. We provide controllers and code to handle data serialization & transport in both directions. As the developer, you merely need to aggregate all the ActiveRecord objects that particular user needs to have access to offline. Slingshot does the rest. Same goes for upsync, and we have similar methods built in for files and other data types. The only extra work for the developer is deciding who gets what.
Ruby on Rails