BaasBox blog

17 Sep 2014
by Federico

Beyond the Box: we are launching
Custom Server Coding with BaasBox

BaasBox is still growing, giving you access to more and more functionalities, but in a short time you won’t have to wait any longer until we, the core team, add your most wanted feature. This will be out on our next release in October – BaasBox 0.9.0.

We are indeed working on server side scripting. This will allow you developers to extend the API provided by BaasBox with custom functions, expose new endpoints, add hooks to events on the server and schedule tasks to be executed periodically.

This work is still in its infancy, and we do not have an high level API yet, but we do have the base of a common framework to leverage the capabilities of the server and the platform BaasBox runs on.
We are starting from the most well known language, JavaScript, but being on the JVM gives us the ability to provide you bindings for your most beloved language.

To give you a taste of what we are talking about, here are a pair of simple rough scripts in JavaScript, using the low level ‘_command’ API: Read more

16 Sep 2014
by Andrea

BaasBox Android HotFix 0.8.3a

We have just released an hotfix for our Android SDK:

Notable fixes include:

  • BaasLink referring to the wrong endpoints (#27)
  • BaasDocument.count() not using provided query criteria (#29)

This hotfix release will be soon available on maven as version 0.8.3a

BaasBox 0.8.3 Released

This is a hot-fix release for our server.
We have addressed multiple minor issues and some performance bottleneck.
Furthermore we have released new version of our native SDK for Android and iOS platforms, and we have completely rewritten the JavaScript SDK from the ground up and now it is fully supported and documented.
The complete list of the closed issues is available on GitHub
In the meantime we are working on the next release that will have some great features regarding Push Notifications and custom Server Side Code execution.
Stay Tuned!
Read more

01 Sep 2014
by Claudio

Server Side processing using BaasBox and Datatables

Since version 0.8.2, BaasBox has been using server side pagination, sorting and filtering in its embedded console to show documents, files and users.
Before that version, it loaded all the data and then pagination occurred in the browser. This was obviously good for small sets of data but it was a great pain in case of large record sets.
The embedded console uses the popular JQuery Datatables legacy (v.1.9) plugin that supports server side processing.
When Datatables are set to use server side processing, the server is expected to support its protocol to retrieve data. This protocol involves filter parameters, paging related variables, sorting, and so on. But BaasBox has its own APIs to retrieve data, therefore a conversion between the formats of the two components, both client and server, was necessary.
Fortunately Datatables allow to override the function used to call the server, in order to customize the logic behind the calls to the server.
Let’s see how. Read more

29 Aug 2014
by Claudio

BaasBox goes to OrientDB 1.7

In the latest developing version of BaasBox (available for download on our website as a nightly build) we upgraded the database engine to OrientDB 1.7, which includes important upgrades and allow BaasBox to take a huge step forward. The new database version better supports transactions, has a pessimistic locking, a better management and stability of records, in addition to some bug corrections that afflicted BaasBox as well.
So far the adoption of the new engine allows BaasBox to use all transactions in order to run non-atomic operations, such as the creation of users, and to fix a bug according to which registered users did not have access to public resources without an explicit GRANT operation on them.
I sent a patch to the OrientDB team, who accepted it and included it in this version of OrientDB. Read more

06 Aug 2014
by Claudio

New ‘skip’ parameter to support server-side pagination

In the latest release of BaasBox a new parameter for all endpoints that support pagination and query criteria parameters is now available.
With this new parameter, server-side pagination is more flexible.
The ‘skip’ parameter is similar to the ‘skip’ keyword available for OrientDB queries, it allows to specify the number of records to be skipped before BaasBox starts collecting them as a result set.
Read more

A history of logging

How the BaasBox service manages to log all these messages flying around

While we were building the BaasBox Service, it was clear since the beginning that we wanted to have a distinct image of what was happening in the system in a close to realtime way.
The infrastructure has several components and services talking to each other in a Service Oriented Architecture: a single message could make a full round trip across the infrastructure and what we want to know are all the steps that this message crossed along the way.
Since the beginning we decided to use Logstash in combination with ElasticSearch as it promised to be a de facto standard in logging storage. The text indexing and search feature of elasticsearch was one of the key features in making this choice. Read more

30 Jul 2014
by Federico

Introducing BAASBOX Cloud Service

federico-pacilli_CEO-BaasBox  from Federico Pacilli, CEO of BAASBOX

creating a service is an iterative process,
there is no such thing as the perfect product at the first attempt!

this is what I think and this is why I am writing to you:
Dear Developer,
making a project such as BaasBox is a crazy challenge. Everything started nearly for fun, uploading an internal project by our team on GitHub and after just 18 months the numbers and results we have achieved so far are truly extraordinary. In 2014 alone we exceeded 6.000 downloads and 19.62% of them became users who use BaasBox for their app. There have been striking cases of users who transferred their apps from commercial BaaS to BaasBox and saved up until 43% of thier infrastructure costs. Not only, they finally thrown off the yoke of commercial BaaS and their “vendor lock-in”. Read more

24 Jul 2014
by Matteo F.

Single Field Query Update

Since version 0.7.3 BaasBox allows you to query a document for a single field or update the value of that field without sending the entire document to the server: this could be useful in several scenarios when you want to simply check a value change while polling the server, or update the state of an entity without sending the entire object.

We decided to use URLs to define which field we want to work with: we think it’s a straightforward mechanism and in the future it could easily be extended (i.e. to specify query on linked documents … link to documentation or to limit the results with constraints where field == 'xxx')

Let’s define our data model for this tutorial: we are building the next generation bugtracker called Bugbox.
Read more

Follow us on: