arrow-rightbarscheckmarkcircle-dribbbleCreated with Sketch.circle-emailCreated with Sketch.circle-facebookCreated with Sketch.circle-githubCreated with Sketch.circle-github2Created with Sketch.circle-gplusCreated with Sketch.circle-instagramCreated with Sketch.circle-linkedinCreated with Sketch.circle-rsscircle-twitterCreated with Sketch.emailCreated with Sketch.facebookgplusinstagramCreated with Sketch.keysCreated with Sketch.linkedinmarsbased-logo-hormarsbased-marsmouseCreated with Sketch.pinpinteresttwitter

Zapptales

Zapptales is a German startup that turns WhatsApp conversations into digital and/or physical books.

This young German company understands the joy of treasuring moments lived over chat in other formats, such as PDF or physical books.


In January 2016, we were approached by two young Germany-based entrepreneurs whose idea was to convert WhatsApp chats into books. They already had an MVP with which they were earning their first bucks.

The zapptales web platform allows users to import their WhatsApp chats, and edit them to their heart's content: changing colours, typographies, reordering the messages, deleting unneeded ones and adding photos here and there. These are just some of the things you can do with the online editor built in the web application to create your WhatsApp book.

Their MVP was good enough to launch and test their business hypotheses, but if they were to compete against real products, they needed a solid & scalable solution. At that time, they had identified a couple of competitors in the same field, and zapptales decided to invest heavily in building a more robust web application to help their business to ramp up.

The goal of the project was to ensure a correct transition from a working MVP to a real application without downtime, and releasing constant improvements to the UX and the feature set for their customers.

The platform was built using Ruby on Rails, so we decided to maintain the base language for the backend. For the frontend, multiple Javascript frameworks are being used but mainly the platform was using AngularJS 1.x.

One of our current scheduled tasks is moving the AngularJS implementation to the new version of Angular or any other Javascript framework of our choice. This task will mean rewriting the whole frontend code, as it is currently making heavy use of shared scopes - which goes against the modern frameworks components model. We will, therefore, analyse more lightweight alternatives like ReactJS or Vue.js.

The e-commerce engine is a Shopify, which is one of the largest and most- reliable e-commerce platforms using Ruby. For the naysayers: Shopify currently supports millions of transactions per minute with little to no trouble at all.

We make heavy use of the Shopify API to provide a seamless integration with the platform and we have never stopped working on improving the checkout process. It's a critical part of any e-commerce.

From the engineering point of view, the most challenging part of the project was to ensure uptime as close to 100% as possible in order to avoid sales dropping. Downtime in early stage startups can kill the business, and even more so in e-commerces.

Besides that, we also had to reduce the bottlenecks we found in the initial MVP, in order to scale exponentially (for the always-wanted hockeystick growth!).

This was easy to achieve given that we were already working for high traffic sites like Zinio or Wuaki or Naiz that required a thoughtful analysis on performance and optimization during traffic peaks and high-concurrency conditions.

One of the most challenging parts of the project has been having to work on an already existing product with legacy code, refactoring without breaking existing functionalities, and growing it exponentially to serve new customers in the fastest and most efficient way possible.

Javier Pérez, Backend developer.

Another challenging part of the project was to prepare the product so it would scale as much as the business required. The initial MVP was running on a single physical server, which was acceptable during the product validation phase. But once we stepped in, moving to the cloud turned out to be our main priority.

The process of parsing WhatsApp chats and generating the actual books involves heavy usage of CPU and RAM. We redesigned the whole process to allow multiple servers to work on those tasks in parallell and assign computational resources in a smarter way.

The whole deployment, tracking and monitoring systems were rebuilt so we could focus less on the operations part and concentrate our efforts in developing new features.

With the distributed architecture we devised, our client was also able to store all their customer conversations in a more secure and durable way, while providing them with faster access to their PDF books across different regions. Proof of that is that they have begun selling to many different countries around the world.

The platform is currently able to face a large number of book orders. However, our work doesn't finish here. We are constantly analysing the platform's systems and evaluating how we can make them more cost effective.

This is how a zapptales book looks like in real life

Another thing worth mentioning, is that books need to be printed. This has required that we take physical borders into account and other relevant criteria when designing the layouts of the books.

One of our frontend developers, Javier, used to work in a printing company, so he knew the procedures & measures inside out, hence reducing the number of iterations required to get it right when printing the books out.

MarsBased have proven to be a partner willing to go the extra mile to exceed our needs and expectations. Over the years we have worked together they have continuously delivered excellent work. They were also ready to work long hours when things got complicated and help out in the weekends, which is something that makes a difference when you are building a business. This alignment with the customers goals is rare to find in an agency. We would not be where we are today without them.

Álvaro Masia, CTO at zapptales

Finally, WhatsApp are changing their platform constantly, as it is a breathing product, sometimes altering the structure of their chats and the messages. For instance, when they allow new file types to be sent through their platform or that time when they allowed human emoticons to have different skin tones.

We needed to react rapidly to these changes. This was done by having a fluid communication with the zapptales team using our shared Slack chat and touching base multiple times per week when such changes were detected and there was a risk of not being able to process chats for a limited amount of time, thus potentially affecting sales.

Our relationship continues well after the first year and looks like the future is bright for zapptales.

We are really happy to have helped them so far, and look forward to working together for many years.

Hire Us

You're one step away from meeting your best partner in business.

Hire Us
Cookies icon

This website uses cookies to give you the most relevant experience. Using this website means you agree with this. You can change which cookies are set at any time and find out more about them by following this link.