OpenPaaS is out!

A technical dive inside the platform

Lukas
Lukas
Mar 1, 2018 · 4 min read

The developers at Linagora are thrilled to announce the first stable release of OpenPaaS, simply dubbed 1.0! This production-ready release is the result of four years of agile-driven work by our awesome developers and contributors from all around the world. Thanks to everyone for making it possible!

To celebrate this public release, this article will take a technical dive inside our platform. If you are looking for something less technical, please visit our website, test the demo, or watch this video. If you don’t care about pseudo-random strings of English words, then go to our GitHub repository, fork it, and start hacking into it. We warmly welcome contributions, comments and any other kind of feedbacks! Let our story begin!

OpenPaaS in a nutshell: open, modular and modern

  1. First, it is a platform, and as such, it is designed to allow you to quickly deploy new applications, using so-called modules.
  2. Second, it wants to be the social and communication backbone of a company, and to help private and public organizations to get work done efficiently.

In OpenPaaS, modules come in the form of Node Package Manager, or npm-like components. They also have a couple of distinctive properties: they bring dependencies either by name, or by ability; they support asynchronous loading; they provide a lifecycle, and go through states during their initialization.

To wrap OpenPaaS up: as an administrator, you are able to choose which additional module you want to deploy and install; as a developer, you are able to manipulate common collaboration objects such as users, contacts, chat rooms, calendars, emails and to reuse them inside your own application; as a user, you can easily explore our solution, as it features a modern, sleek and responsive web interface embracing the material design guidelines.

Under the hood: the Core and the Suite

Coded in JavaScript, the Core of our PaaS is built upon a handful of critical components, which are all free — as in free love — . Let’s list them:

  • NodeJS is used as the JavaScript run-time environment for executing the OpenPaaS back-end application;
  • a MongoDB database is used to store application-related data, except emails;
  • a RabbitMQ message broker is put to work to deliver messages between applications;
  • Elasticsearch is indexing all data stored through OpenPaaS. Without it, we could not search inside the data stored by applications, including email messages;
  • Java Apache Mail Enterprise Server, also known simply as James, is used as a mail delivery agent for OpenPaaS, and to interact directly with the platform. James allows easy administration and load balancing of emails, alongside high availability. James not only supports protocols such as POP3 and IMAP, but also JMAP, the trending protocol that is meant to make emails cool again. Among other things, it allows the browser to talk directly with the mail server.
  • A Cassandra database, which is used to store emails. If you want to know more about Cassandra’s performance tuning in the context of OpenPaaS, let’s check this article;
  • Finally, a WebDAV Server based on SabreDAV, and which is managing calendars and contacts.

The suite

From an administration standpoint, OpenPaaS can be interfaced with existing directory services, such as OpenLDAP. If you would like to implement web-based single sign-on (SSO), you can also integrate it with LemonLDAP, as shown for example in this previous article.

What’s next?

Conclusion

Keep in touch with OpenPaaS on Twitter, Facebook, GitHub and with LinShare on Twitter and GitHub.

Interested in joining Linagora? Apply for job offers.

Are you currently a computer science student? Do you want to be part of the future of emails? If so, let’s follow this path.

Linagora Engineering

We are Open Source Engineers, Hacking Awesome Stuff

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store