The Perfect Framework for Ecommerce

We’ve been around the block for a hot minute, but for those of you who aren’t familiar with us, we're an open source ecommerce platform built on Meteor. We enable retailers, developers, and agencies to create a completely reactive online store with our dynamic interface and fully customizable toolset. Using Meteor, Docker, and Node.js, we’re powered by cutting-edge technology and a collaborative open source community from around the world.

In this post, we highlight why we chose Meteor as our architecture, how Reaction disrupts the current ecommerce landscape, and where we’re headed next.

The Early Landscape

As an early-stage startup built on leading-edge frameworks like Meteor, we’ve done our fair share of migrations, code refactoring, and all-around experimenting. Back in 2013, the JavaScript ecosystem was a bit like the Wild Wild West, offering up a plethora of tools for building, deploying, and testing, but fewer cohesive platforms. ES6, React, and Redux weren’t quite in existence yet, and Meteor was still in its infancy, barely on its 0.5.0 release— well before its official 1.0 debut!

Still, even then, we knew that Meteor brought something truly special to the table, and that’s why we’ve been a part of the community throughout every single release, from its pre-production ready iterations, all the way to 1.4.1. We knew that if we were going to build a disruptive platform that would take away the aches and pains of setting up an online store, then going with Meteor was a no-brainer.

Why We Chose Meteor

In order to continuously improve on Reaction while the ecosystem settled on some standards, we wanted to focus our efforts on a platform choice rather than a hodge-podge of individual tools. Meteor has not only given us everything we’ve needed, all in a single package, but it has also kept up with the changing architectural pace of the JavaScript ecosystem, which has just now finally begun to settle.

Since we were building a commerce solution that was fast and modern, we also knew from the get-go that it had to be written entirely in a language that was equally event-driven: JavaScript, the common language of the web. We started in ES5, converted to CoffeeScript for a short while, then went back to ES5. In 2015, we updated our code to ECMAScript 2015 / ES6.

A reactive environment, one that would allow real-time updates, was also crucial to us. We wanted a framework that would allow us to run the same codebase client-side and server-side, saved directly to a database, in a seamless manner. Meteor changed the game with DDP, one of the first live WebSocket implementations ever, back when the JavaScript ecosystem wasn’t stable enough to provide us with such capabilities. That’s precisely why we chose Meteor: it was the only Node.js framework that was auto-synchronized, completely open source, and truly reactive. In fact, that’s where we got the name Reaction— that, and Newton’s Third Law, which states: “For every action, there is an equal and opposite reaction.” Sums up real-time reactivity pretty nicely, right?

How It Works

alt alt

Because Reaction is written entirely in JavaScript, our interface is intuitive, minimal, and fast. Users may review inventory, manage merchandising, and add product tags by dragging and dropping items across the screen using dynamic, inline editing. Change out a product photo, or run an impromptu promotion, and you’ll see it reflected on your shop instantly, all without having to reload the page. Adding a product is as easy as buying a product. That’s the power of reactivity!

“Store owners like to fulfill orders immediately and offer a better experience for their customers,” said Ritesh Shetty of Shopping Maestros, a Santa Barbara-based grocery marketplace currently in development. “Real-time updating really helps us with development velocity and time to market.”

In addition to real-time updates, our platform provides all the features you need, right out of the box, but with the added benefit of being fully customizable for a unique and tailored commerce experience. This ranges from how you want your search queries to show up, to the look and feel of your cart, to the email messaging you send to your customers. We also feature a growing gallery of third-party app integrations, for shop-owners who already have a preference for particular services.

Because Reaction is built on Meteor, merchants end up saving time, money, and extra dev work, giving them more time to focus on what that’s most important: selling products.

Where We’re at Now

Things have changed quite a bit since the early days, both for the state of JavaScript, and for us at Reaction. On GitHub, we are currently the largest JavaScript-based commerce platform, with almost 9,000 shops launched during our Alpha release. Our security package, which we released to support the Meteor community, has been installed nearly 18,000 times across over 3,300 apps across the global JS community. And locally, we’ve sponsored and hosted nearly a dozen Meteor Meetups, the most recent one at our new headquarters, all across Los Angeles.

We also recently secured a $2.7 million Series Seed investment, led by CrossCut Ventures and others, along with angel investors. As it stands, we are now one of the few Meteor-based, open source platforms to be backed by VC funding. We hope that the extra help, along with a team fully devoted to the growth of our platform, will help us further the movement of open source to a larger audience. When we grow, Meteor grows!

Looking Forward

Naturally, we’re excited about 1.5. Earlier this year, we refactored away from Atmosphere packages to using modular imports, and we’re looking forward to bearing the fruits of Meteor’s restructuring toward npm. We’re also looking forward to the new Apollo/GraphQL integration, and seeing what a fully reactive GraphQL will bring to the table.

As for Reaction, here’s what’s next: We’re aiming to host monthly Meetups at HQ all throughout the year, and this time, it’ll be focused on Node.js, Docker, and the LA startup scene, in addition to Meteor. To learn more about Reaction Action, visit our Meetup page, or follow us on Twitter for the latest news.

To track our progress, as well as learn more about the new features we’ve been releasing, check out our Features Roadmap or GitHub page.


This was written as a guest post for the official Meteor blog, where we introduced ourselves as one of the earliest adopters of the Meteor framework.

comments powered by Disqus