Open Source libraries to make apps and app development fast and fun - less boilerplate and managing infrastructure code

Our open source libraries run on over a billion devices and are used by large companies with especially high performance requirements.
Learn about our widely used, battle-tested, and performance-optimized open source libararies for mobile app development:

> 2.000.000.000 people rely on greenrobot libraries

Slim & fast - that is what we stand for and that is why thousands of mobile developers wordlwide use our solutions, leading to more than a billion mobile users relying on our code

apps fast on the road

Superfast

Above all, we value performance. Speed matters. Thus, we constantly benchmark our solutions against alternatives and optimize for performance.
lean and light development

Lean & light

We keep all our solutions small and frugal. We also ensure all our open source libraries are optimized for maximum battery-friendliness. Perfect for mobile.
Easy to use libraries

Easy-to-use

We are developers ourselves and value the fun aspects of coding. Accordingly, our libraries are easy to use and save developers from tedious and unituitive tasks.
Open development

Developer-driven

We are passionate to deliver high performant, slim, and elegant solutions. Our libraries have more than 15.000 GitHub stars and are industry-proven.

Mobile News from greenrobot

Library updates, new releases, related developments in open source, mobile databases, and Android

Database tutorial for a C++ beginner

C++ data persistence beginner tutorial – get started with ObjectBox

Are you a C++ beginner looking for a C++ database that is easy to use? In this tutorial, we’ll explain how you can install ObjectBox on Windows, even if you have never worked with an external library before. Your best option might be to set up a Linux subsystem (WSL2) first. After that, we will install the build tools and some useful development software such as CMake and Git. When this setup is ready, we can jump right into installing ObjectBox and running a simple example with it. We encourage you to explore its source code to get a grasp of ObjectBox in action.

Why use the ObjectBox C++ database as a C++ beginner?

Almost any program that stores some kind of data will benefit from incorporating a database into it. By storing data systematically, you will always be able to easily access, manipulate and search for different entries. Because of its flexibility, a NoSQL database will make a great fit for your first project and will serve you well further down the road. ObjectBox is not an ORM, so you do not need to learn another programming language, and can get started in minutes. ObjectBox uses native C++ APIs, which can be intuitively understood if you have any C++ experience. Furthermore, if you want high performance or your project is created with scalability in mind, a NoSQL database like ObjectBox might be the only viable option.

Continue reading

Objectbox database for Java / Kotlin 3.0

ObjectBox Android database for Java / Kotlin 3.0 + performance benchmarks

ObjectBox – the high performance Android database for Java / Kotlin – goes 3.0 ❤️ and apart from features. the dev team is also sharing CRUD performance benchmarks including MongoDB Realm and SQLite with Room. ObjectBox Database has been used by over 800,000 developers since the 1.0 release for Android and apart from Java / Kotlin for Android, the ObjectBox DB also has C/C++, Go, Flutter/Dart, Swift bindings now and a superfast Data Sync.

What is ObjectBox?

ObjectBox is a NoSQL ACID-compliant object database and an alternative to SQLite and Room. ObjectBox is optimized for fast object persistence on restricted devices, typically “embedded devices”, sometimes called “edge devices” like e.g. smartphones, IoT gateways, PoS systems, or Controlling Units. Because most applications today include any number of decentralized connected devices, ObjectBox also provides fast and easy access to decentralized edge data through an out-of-the-box Data Sync solution (Early Access).

Continue reading

Flutter Databases Compared

What is the best Flutter Database?

Flutter Database options are still limited. We compare the available alternatives, and share performance benchmarks. 

How to persist data in Flutter / Dart?

The database market is a long-established saturated market and still experiencing double-digit growth. Most of that growth stems from NoSQL databases and newer database technologies, like time-series databases or graph databases. As Computing is shifting towards Decentralized Computing on the Edge, local databases that support decentralized data flows on Mobile, IoT, and other Embedded Devices come into focus. Some come from the Flutter data persistence world, and we will take a look at them in a second.

databases-time-history

Before we dive into the Flutter database options and compare them, we’re quickly carifying the term to make sure we share a common ground. Don’t worry, we’ll not get theoretical, but simply make sure we share a common language.

Continue reading

SQLite alternatives 2024

Mobile databases: SQLite and SQLite alternatives for Android and iOS

UPDATED 2024
A long time ago at Droidcon Berlin, we noticed a lot of questions around databases. Many people weren’t aware of SQLite alternatives and the differentiation between databases and Object-Relational Mappers (ORMs). Therefore, we followed up with an overview of the local database landscape (Edge Databases / On-device Databases), which we maintain ever since. We just updated the comparison table in October 2024 to reflect the recent deprecation of MongoDB Realm Atlas Device Sync, which also entails the end of maintenance for  the open source Realm database.

Why use a local database on Mobile?

There are some advantages associated with using a local database (Edge Database):

  • It always works: full offline modus for apps that depend on stored data
  • Manageable costs: Frugal on bandwidth and cloud costs as most data can reside on the phone
  • Speed: fast and predictable performance independent from network availability
  • Data Privacy: personal data can be stored with the user, where some say they belong)

Continue reading

Spread the love