Open Source Rails & Flex eCommerce Application
[Announcement] Rowan Hick Consulting, Canada and Ron Hanley of Fastmount LTD, New Zealand are pleased to annouce that their new Rails/Flex/MySQL eCommerce application will be released to the community under an Open Source license. The application, is a successor to a PHP/MySQL based application developed by Rowan Hick and James McGlinn of Nerdsinc Ltd New Zealand.
After nearly 2 years in production, with the advent of Rails, Flex, and the rapidly growing business needs of Fastmount, the current application no longer meets the business needs of Fastmount. We made the decision early this year to re-write a new application and have been developing requirements for the application as well as evaluating technologies.
The application is a business to business eCommerce system. Allowing a marine manufacturing company in New Zealand to service it’s agents, distributors and customers world wide. The existing application facilitates order management from creation through to shipping tracking, along with customer management and some reporting elements.
Why are we open sourcing ?
We made the conscious decision that we don’t want to sell the application, as such being closed and proprietary we gain no extra business value by keeping it internal (this doesn’t preclude the possibility of a hosted version being provided down the road). The application contains no proprietary information to Fastmount Ltd so there is no harm by open sourcing it.
Having done a number of eCommerce solutions, the problems faced and solutions tend to be very similar regardless of domain. Thus the app’s tend to look very similar. Why reinvent the wheel, over and over again?
My personal vision is that a vibrant community will flourish around the application. If it can become an option for people when putting together an eCommerce solution then I would be ecstatic. Currently I haven’t seen an active Rails based open source eCommerce engine out there so there’s hope that this may become one of many possible standard ‘engines’ for people to use.
Through our background in the widget ordering domain - solving business problems beyond the simple shopping cart such as; multiple price catalogues, multiple currencies, product/ package combination, agents, sales by regions etc - this may help to be a learning tool for those who aren’t familiar with the problems at hand, introducing real world solutions beyond your standard learning materials and tutorials.
Also by opening it up, and allowing public scrutiny will likely ensure that a higher standard of coding is reached within the application - there’s nothing like judgement from your peers to keep those nasty kludges out of the codebase.
Why Flex ?
Flex, does at first glance seem to be an odd coupling with Rails in terms of philosophical approach. However as a business tool, this application needs to work perfectly, regardless of browser incompatibilities. In my own opinion, the time saved by not having to deal with these issues, along the extra interface richness granted by Flex, warrants the extra upfront time in creating the Flex interface. What should be noted here is this application is more of a business to business, rather than business to consumer type system - thus we can expect less casual browsing/ordering as in the case of a product catalog/ecommerce app versus a very defined business process for ordering.
Having said all this, whilst the app has a Flex front end by using some Rails niceties there will be no stopping anyone developing an HTML front end for the app (infact the app will already have some front end work in HTML), so the core Rails application will become the engine and any various front end(s) that may appear can be bolted on. We’re using a REST based approach to facilitate this.
Roadmap
Current Status: Initial development of Order management stories; Creating, editing, listing orders and customers. Evaluating implementing microframeworks for the Flex front end (Cairngorm or Model Glue Flex). Evaluating communication methods (HTTPService, WebOrb, RubyAMF).
Release 1: Production ready system - Revamp of existing system in Rails and Flex, all existing user stories maintained. Streamlined order entry system, customer management, order payment processing (via ActiveMerchant), shipment tracking (via UPS).
Release 2: Customer Relationship Management enhancements
Release 3: Inventory Management, manufacturing enhancements.
Community Release
The application will be released to the community under an Open Source license (license to be decided), the only caveat from our production system will be licensed assets (such as icons) stripped out for community release with placeholders for people to find their own. I haven’t as yet investigated a trac (or trac like system) that’s impervious to spam, so for any community members that have any ideas reading this post feel free to drop us a comment. This will likely happen in the next month.
Community Contributions
We will welcome contributions and commit back into the core, so long as they don’t negatively impact core functionality. Process as yet undecided. To ensure fair attribution - the credits page of the app will include your name as a contributor. Whatever license is decided upon will require that any modifications are publicly available as open source. Share and share alike principles.
The Name?
Undecided - if you want to throw out an idea feel free!
Keep Informed
All announcements will be made here on this blog. Keep informed, keep your RSS readers locked to http://feeds.feedburner.com/rowanhick
In closing
I’m personally very excited about providing this to the community and hope good things will come out of it.
6 Comments, Comment or Ping
Derek Wischusen
Hey Rowan,
Very cool news. It’s definitely great to see an open source Flex and Rails project, especially one that could be so useful.
For a Trac-like project management site I would recommend that you check out redMine.org. It’s a Rails app and it’s really easy to get it up and running. I’ve been using it for about a month or so and I have been happy with it.
With regards to frameworks, I personally prefer Model Glue Flex over Cairngorm. It’s a bit more lightweight.
I look forward to seeing Release 1.
Derek
Jul 17th, 2007
admin
Thanks Derek - my biggest reservation is that Model Glue is pretty new on the scene and given I’m new to the Flex scene - could be a recipe for disaster
I’d like to see a solid real world application of it and see what it’s ’scalibilty’ in terms of developer cycles is, compared to Cairngorm.
Cairngorm certainly seems a complex beast and at first glance very structured and suitable for a large application (which this one will most definitely be) - and it’s more comforting the Adobe backing via Adobe labs, dev net articles etc.
Choices, choices.
Jul 17th, 2007
Rohan Jayasekera
It sounds well thought out. Best of luck.
Jul 25th, 2007
Tom Kaltz
Is this project still in development? I’m very interested in it.
Dec 11th, 2007
Stephen Ocean
Have you made any progress on the Flex storefront?
Apr 13th, 2008
Reply to “Open Source Rails & Flex eCommerce Application”