Forward acquired a contract with a freelance designer. They had a client in the Fabric industry, Studiobon. They wanted a custom eCommerce system. Due to the heavy request of the client and the impending release date, we had about two weeks to roll out a complete system that could interact with their design.
I decided to use the Breadstream Weblab framework. It acomadated a majority of their needs, and as I was about to discover, they had plenty more! Luckily, I rediscovered that I developed my system with flexibility.
Click here for more information about Breadstream.
The Features
They had a tall order, although the rudimentary stuff was handled by Weblab, they had plenty of requests that would need to be scratch-built.
Product Listings
The shopping cart interface was creative, thumbnails of the products (and their options) would be listed on the right, and the selected product would be on the left. This was a simple template modification.
Fabric Options (fabric colors)
Although, Breadstream was designed to allow products to have options, each Studiobon fabric color has its own image. Each fabric color also has its own material. Thus, I had to upgrade my existing option manager.
Product Interface
Each category has a unique interface due to the nature of its products.
Textiles/Fabric
Since each fabric has an assortment of colors, they are listed as thumbnails below the main image. Once a color is chosen, the main image, material and color attributes change accordingly. It also notifies the cart, so when you 'add to cart', it selects the current option.
Pillows
Although this was perhaps the most normal category (it didn't have options), it uses an inventory.
Collections
While textiles are buyable, Collections are not. In fact, collections have their own page. They are binded to Textiles. All of the fabrics in collections are linked to their likeness in textiles. To avoid the arduous busywork of manually linking each of them, I wrote a simple logic that connected the two based on their names.
Shipping
They have their own shipping calculations. They were done with several exceptions, so many that they needed to be hard-coded and couldn't be user-defined unless I was ready to write a suite strictly for this.
Inventory
These are hand-made, thus, there can only be so many. I created an inventory counter. It also takes other customers' carts into account. If there are 20 items, and another customer takes 15 items, then you can only add 5 into your cart. It was a nice challenge and would be a great feature to integrate into Breadstream proper.
Navigation
The designer designed a creative navigation. Thankfully, they turned down a CMS, otherwise, it would be unstable. Integrated with some creative CSS.
Projects
With the exception of Projects, eCommerce is the only user-generated portion of the site. The user can upload her images, which auto-crop/resize to the specified dimensions. Due to the limited screen width, a scrollbar has been implemented. Rolling over a thumbnail changes the main image.
The Pages
Each of the inner pages were hard-coded. Initially, once the design was done, I copied the copy-text and uploaded the images, finishing it within an hour. That took me back.
Afterword
I enjoyed the challenge of this unique site. With an extreme deadline (two weeks) looming over me, I managed to accomplish it working late at night. I am also happy to breathe new life into my old system, yet still improve upon it. I remember Ian and I counting pixels to get the precise dimensions of margins (working with a designer), and I think that image is a metaphor for this project: it wasn't the big things (making sure authorize would handshake or loading product descriptions) but it was very small, seemingly innocuous things that were the greatest concern and our greatest obstacles.
Feedback