Spree Commerce

Try It Now

Yuve Chooses Spree 3.0

Posted on May 26, 2015 by Michal Faber

About The Author

Michal is a co-founder & COO of Spark Solutions, a Ruby on Rails & Spree Commerce software house that offers online store or marketplace development, integration, customization, migration, as well as high quality Ruby on Rails application & website development services for heavy loads and demanding users. Spark Solutions’ founders are both experienced web entrepreneurs who often assist their clients in a CTO role.

Yuve chooses Spree Commerce 3.0 to help busy people maintain a complete diet without compromising on time

New York City-based Yuve, Inc. strongly believes that a combination of complete nutrition, exercise, positive thinking and relaxation makes everyone feel and look younger. But there’s so much to do and so little time! That’s why the Yuve founders’ goal is to help people be healthier and more confident by providing them with the best tasting vegan nutritional shake, as well as with inspiring and informative content like fitness and psychology advice or health and beauty tips.

Yuve decided to choose Spree Commerce 3.0 as a unified ecommerce solution, seamlessly integrated with WordPress as a blogging platform, for a balanced mix of storefront and content marketing ingredients. The new website was launched in just three weeks, in cooperation with Spark Solutions, Yuve’s Spree Commerce & Ruby on Rails developers.

The Story of Yuve and Spree Commerce

The founding story of Yuve is an inspiring tale of determined search for the best solution to one’s life challenges. Lola Sherunkova, Yuve co-founder, left her life as a Russian ballet dancer and immigrated to the United States to pursue the American Dream.

After beginning work in New York City, she realized that leaving the active lifestyle of her former dance life had left her deprived of the fitness level, energy and nutritional motivations she once enjoyed. She searched high and low for the right solution, eventually reaching out to a renowned health expert to help her come up with her own nutritional formulas. With that, Yuve was born.

The story behind Yuve’s search for a technology platform to run its online retail business is a similar tale. Not willing to accept half-measures and unclean formulas, the Yuve team researched available solutions and decided to go with the open-source Spree Commerce 3.0 storefront and WordPress blogging platform.

“Choosing Spree Commerce 3.0 allowed us to develop a unified ecommerce platform in place of our old solution and we accomplished that in just three weeks. We launched our online store with a custom checkout flow for better user experience and responsive web design implementation for easy mobile shopping,” explained Sam Basilio, Yuve’s co-founder.

Benefits highlighted by the switch to Spree 3.0 include the ability to offer promotions to customers—such as free shipping for U.S. clients and student discounts— and were deployed quickly by Spark Solutions.

Spree Commerce and Wordpress Integration

Why did Yuve decide to integrate WordPress with Spree Commerce 3.0, using the same domain getyuve.com? Because it greatly supports Google positioning efforts and enables the Yuve team to share their know-how with wider audiences.

Edutainment and content marketing are very important to Yuve’s business. Nowadays, maintaining a high quality diet is a never-ending challenge. With the overwhelming amount of information regarding ingredients, sourcing, processing and delivery, making the “right” decision can often be incredibly confusing.

Countless products are disguised as “healthy,” but in reality we’re simply sabotaging our health. Lack of time due to long working hours often leaves us without breakfasts or lunches, causing bad snacking habits or chronic overeating. Spark Solutions and Yuve’s joint efforts help busy people around the world make better dietary choices.

GetYuve.com Integrations & FullStack

But there’s more to Yuve’s online retail website then meets the eye. Spark Solutions performed several useful integrations with such cloud services as:

  • PayPal Express Checkout
  • Braintree credit card payments
  • Mailchimp for building a mailing list and building customer loyalty for repeat business
  • Sendgrid for email transaction notifications
  • Amazon S3 for all file assets storage and trusted, scalable, secure backups
  • Amazon CloudFront content delivery network for faster page load all over the U.S. and the rest of the globe

Technology stack used by Yuve website:

  • Ruby on Rails with HTTP app caching & memcached for shorter page load times
  • Spree Commerce 3.0—one of the first implementations of the latest version
  • Twitter Bootstrap 3.3 for mobile-ready, easy-to-modify layout
  • ReactJS—improved checkout components such as unified login & signup form for better user experience
  • Haml, Sass, CoffeeScript for front-end components
  • PostgreSQL, Redis—back-end engine
  • Heroku—cloud hosting optimized for increasing traffic loads


Yuve is a natural solution for busy people to maintain a complete diet without compromising time. It can substitute a meal, serve as a snack, or be an addition to your favorite smoothie. You can mix it with water, juice, milk of your choice, or coconut water. This simple process does not require heating or cooking. You can easily appease your appetite in minutes.

Spree Commerce 3.0 is Yuve for ecommerce solutions—it enables rapid development and deployment of a mobile-ready, user-friendly online store. It decreases time to market and, hence, increases your ROI. It can substitute your old storefront and meet your growing customization and integration requirements.

You can mix it with PayPal, Braintree, Mailchimp, Sendgrid, Amazon and many other ingredients for a successful ecommerce business. This simple process doesn’t require a lot of time and no developers are harmed due to overcomplicated codebase. You can easily appease your appetite for ecommerce growth in weeks.

You can get your Yuve shakes at GetYuve.com. You can get expert Spree Commerce advice at SparkSolutions.co. To view this blog in its original format, visit the the blog of Spark Solutions.

Using Deface with Spree Commerce

Posted on May 26, 2015 by Marcin Dobrowolski

About The Author

Marcin is a developer at netguru. Before enrolling to Poznań University of Technology Marcin spent way too much time in front of a computer playing games. Finally he has figured out that the love for a shining screen can be channeled into something way more productive. Easily hyped about every new piece of technology on the market. Addicted to coffee, music in all forms, sports and computer games. Loves warmth, hates cold; the only good thing about winter in his opinion is the lack of bugs, mainly mosquitos.

Today I Learned: Deface Selectors Work on ERB Code, not HTML

Are you looking for quick solutions to your problems with code? Or want to find clever tricks you can read about in a few minutes? You’re in the right place! This is the beginning of the new post cycle: Today I Learned. In these posts, Spree Commerce Certified Partner netguru will present quick tips from its developers that they came across during their work day. The first tip comes from Marcin and concerns Deface—the gem used in the Spree ecommerce platform.

What Exactly Does Deface Do?

When working with Spree, you can use a gem called Deface which lets the developers inject code into a Spree view without overwriting the whole file. It works with HTML (ERB, Haml and Slim). In short, you select whether it should insert your piece before/after an element, replace it/remove it altogether, etc. Finding the right element to replace is easy because Deface uses Nokogiri’s implementation of CSS selectors.

The Problem with Deface

Our client asked us to replace mailto: links. Instead, we were supposed to put an email in a certain table and link them to a user’s profile. Take a quick look at this ERB code:

Unfortunately, the td had no class, so we needed a pseudo-selector to find it. Here is the selector that I thought would work:

However, for some reason the selector couldn’t find the necessary element. Here is what Deface had to say about it:

Why Didn’t it Work?

After a lot of frustration, trying different selectors, theories that Deface doesn’t find ‘a’ elements because of a bug, it turns out that Deface uses selectors on ERB files, not compiled HTML files. Moreover, you can write Deface overrides in Haml/Slim, but it will still:

  • Convert them to Erb
  • Convert Erb blocks into HTML-ish tags…
  • Do all the overrides there

So, since we want to replace an ERB block, our selector will have to contain erb[loud] instead of ‘a’.

The Final Solution

The trick that worked was to use a selector directly on the erb code:

As you can see, instead of matching an anchor element, my override matches an erb[loud] tag that is generated by Deface in an intermediate step, before printing the final HTML.

So, here’s the trick—hope you’ll find it useful! If you have any other tips and tricks for Spree, feel free to share them in comments—or link to your GitHub page.

In the next episode of Today I Learned you’ll find out how to render templates to strings in EmberJS, a tip brought to you by netguru developer Kuba. To view this post in its original format, visit the blog of netguru.

Is an Open Source Platform Right for Your Ecommerce Business?

Posted on May 21, 2015 by Jenna Compton

About The Author

Jenna is the Director of Marketing at Blue Stout, a digital production agency that builds custom commerce applications, like ecommerce shops and interactive mobile apps, for clients ranging from startups to billion-dollar public companies. Jenna provides regular contributions to the blog, and when she’s not reading about business, she can be found running or drinking lots of coffee (never at the same time).

Ready to launch your online retail store? Choosing the right platform for your ecommerce business can be a challenge, especially with all of the different open source and full-service options available.

Larger businesses need to be equipped with more features and professional support, while smaller businesses may be looking for a lower-cost option that will allow them to manage their customers and products in an easier way.

Here are the pros and cons of some of the most popular open source and full-service ecommerce platforms used today to help you decide which platform fits your company at this stage of your business development.

Open Source Pros/Cons

Pros: free, customizable and manageable for small startup businesses

Cons: costly add-ons, less technical support, and too basic for businesses growing quickly.

Open Source Solution: Spree

Spree Commerce is an open source option for those who are interested in a self-hosted solution that’s built on Ruby on Rails. Known for its speed, Ruby on Rails was used to build over 200,000 websites, including big names like Basecamp and Groupon. Shopify’s developer, Sean Schofield, developed Spree as the shopping cart open source alternative. Although you’ll need to download extra apps in order to get more out of Spree, it still offers many free options.

As soon as you have access to the platform you can download discount code apps, make use of special offer and gift card capabilities, try selling on Facebook, and take advantage of more immediate features. Due to its fully customizable nature, it will take you time to learn how to use Spree, as the initial setup is not as simple as most Enterprise solutions. So even though you may have a slight learning curve in using it, Spree Commerce is a platform we highly recommend here at Blue Stout and have worked with it on multiple ecommerce designs.

Still Undecided?

If you’re still not sure if open source is the best choice for you, read more about the pros/cons of fully-hosted enterprise solutions in my post here on the Blue Stout blog.

Spree Commerce vs. Magento

Posted on May 20, 2015 by Fareed Dudhia

About the Author

Fareed Dudhia is a developer for Spree Commerce Certified Partner, Made. Made is a leading UK software services provider. The team works with businesses to craft software that delivers results; from ecommerce stores and CMS-driven websites, to enterprise karaoke platforms.

There has been so much written about how Spree stacks up against Magento over the last few years that it’d be easy to dismiss another article out of hand.

They’re great to contrast, as they’re both open-source ecommerce platforms. I’ve worked professionally with both, and I can identify with both sides of the argument. The Spree folks say that Spree can do everything Magento can, and do it in 1/200th the amount of code (their cores are 45k vs 8.2m lines of code respectively). The Magento folks say that Spree is new and relatively untested and, as such, is only really good for smaller businesses that won’t be hurt too much if their site is somewhat lacking in the reliability department.

Well, Spree’s come of age now, and perhaps it’s time to contrast Spree against Magento again, in 2015.

Maturity & Reliability

The main argument levelled against Spree has mostly been that it’s a newcomer; immature technologies are generally less reliable than their better-established competitors. Magento beats Spree in maturity, that’s for sure. We’ve been hearing this for quite a few years now, and you’ll still see arguments levelled against Spree on the basis that it’s an immature technology.

These arguments, of course, neglect the fact that larger codebases tend to be much less reliable than smaller ones (Magento is several hundred times larger, codebase-wise) and the fact that Spree is built upon the rock-solid Ruby on Rails framework. Rails powers some of the largest and most robust websites on the internet, including Airbnb, Square, Github, Hulu, and many others.

So, for how many more years is Spree going to be considered a newcomer? At some point, “it came first” stops being a reason that one product can be considered better than another. Spree already powers a whole bunch of successful, high-revenue online storefronts: Dulux, Bonobos, Fortnum & Mason, Finery and On Running all spring to mind (in fact, Bonobos switched from Magento to Spree). Spree has been around going on eight years now, and in the tech world, that’s actually a pretty long time. Again, Spree has come of age.

Speed of Development

No one’s arguing that Magento is quicker to develop features for than Spree; Ruby on Rails is renowned for being the most productive web framework out there, and adding new features to a gargantuan codebase like Magento takes considerable time. Where Magento does score points, however, is concerning plugins.

The Magento store has integrations for pretty much everything under the sun, and you might find that you can buy all the integrations you need without having to pay anyone to write any code. There’s also a ton of themes that work well out of the box. Magento also scores points here in that it’s written in PHP. PHP is a very popular language, and finding PHP programmers is considerably easier than finding Ruby programmers.

Having said that, Magento sites often suffer from the codebase becoming large and unwieldy. Hiring more developers does not fix this problem, as those developers then have to be trained on the project. If the codebase becomes difficult enough to understand, hiring new developers does not guarantee that work will be done any quicker. These projects may grind to a halt, as new work requires understanding of the old work. Project managers on these projects become very well acquainted with terms like “bus factor” and “development hell.”


Back when Spree was relatively new, it was missing all kinds of features that online shoppers have come to expect. Proper product searching, sales, wishlists, BOGOF promotions, and multiple currencies were either not fully polished or missing entirely.

Spree has come a long way since then, and now really can do everything that Magento can. I’d be happy to settle for a draw in this department, were it not for one thing that Magento stores can really struggle with: loading a page quickly. It’s well known that page load speed can severely effect conversion rates, and this is an area that Magento will always struggle with, especially given the size of the codebase.


If we disregard Magento Enterprise (the pricing of which would make Donald Trump’s wig fly off), the pricing of Magento and how that compares with Spree’s pricing is really more about the company that you get to do the work.

It’s well known that quotes in this business can vary wildly, and finding the right company for you is a quest that you must embark upon yourself, as a business (although we might know of one company that can help). This is assuming the quote is, of course, for getting an initial site up. If your business then decides to add a bunch of features and remove a bunch of different features, the manpower required is significantly less for Spree, and as such should be reflected in the cost of getting the work done.


Comparisons in 2012 had a fairer pro/con list between these two platforms. In 2015, Magento is very similar to how it was, whereas Spree is a completely different beast. With the release of Spree 3, the main reason I’ve found for a business to build a project with Magento is that their developers are already familiar with PHP.

I’ll fully admit to bias here, as I worked professionally with Magento for several years and consciously made the decision to move away from it for precisely the reasons I’ve described in this article. Things move pretty fast in the technology world, and often the slow-moving maturity that Magento exhibits is but a few short steps from obsolescence.

To read this post in its original format, visit the blog of Made.