Core
Guides v2.x
2

What is Kuzzle #

If you're on this page it's probably because you need a backend for your mobile, web or IoT application.

Once again you had been preparing to develop a backend from scratch... Well, maybe not entirely from scratch, because you probably planned to use some kind of framework (and there are a lot of them!) to make it easier for you.
Those frameworks allow you to develop faster by providing a predefined structure, classes and configurations.

However, you will still have to develop the majority of the basic features:

  • Storing and searching data
  • Permission management
  • User authentication
  • Access to data and functionalities through an API

Each of these features will take time. Time to develop but also time to:

  • Debug
  • Test
  • Maintain
  • Secure

In short, you were going to spend a lot of time on code that doesn't bring any value to your users but is nevertheless essential.

This time could have been used for many other things:

  • Development of business functionalities
  • UI / UX of frontend applications
  • 100% coverage by automated tests
  • Implementation of devops best practices
  • Marketing of your product
  • ...

It is on the basis of this failure to optimize development time that we decided to start developing Kuzzle 5 years ago and that we have been devoting all our efforts to it ever since.

How it works #

Kuzzle is a backend with ready-to-use features that can be extended in the same way as any framework.

When you start Kuzzle, you automatically have access to an API exposing a wide range of features:

Then you can develop your custom business and high level features by extending Kuzzle API or modifying API methods behavior.

Example: Basic Kuzzle application

Copied to clipboard!
import { Backend } from 'kuzzle';

// Instantiate a new application
const app = new Backend('playground');

// Declare a "greeting" controller
app.controller.register('greeting', {
  actions: {
    // Declare a "sayHello" action
    sayHello: {
      handler: request => `Hello, ${request.input.args.name}`
    }
  }
});

// Start the application
app.start()
  .then(() => {
    app.log.info('Application started');
  });

Complete ecosystem #

In addition to Kuzzle, we are developing many other projects to facilitate the use of our backend.

All these projects are also available under the Apache-2 license on Github.

Admin Console #

The Admin Console is a Single Page Application (SPA) written in Vue.js.

It is used to manage its data and the user permissions system.

As it is a single-page application (SPA), no data related to your Kuzzle application will pass through our servers, so you can use the online version available at http://next-console.kuzzle.io.

admin console

SDKs #

We develop many SDKs to facilitate the use of Kuzzle in applications.

These SDKs are available for the most common languages and the majority of frontend development platforms:

sdks and platforms

Kourou #

Kourou is a command line interface that facilitates development with Kuzzle.

It can be used in particular to execute any API action or even code snippets directly.

See Kourou on Gitub

Business plugins #

We also develop and distribute plugins for Kuzzle.

These plugins allow you to use the functionalities of other services such as Amazon S3 or Prometheus.

The community is also able to develop and distribute its own plugins to enrich the ecosystem.

business plugins

Expert Professional Support #

The Kuzzle backend and all our projects are developed by a team of engineers based in Montpellier, France.

Our multidisciplinary team of experts is capable of addressing any type of issue and assisting projects of all sizes.

You can thus pass the development and production phases with a relaxed spirit, knowing that you can rely on quality professional support.

Get a quote

Meet the community #

We federate a community of developers using Kuzzle around the world.

Whether you want to ask a question on StackOverflow, check out the Kuzzle awesome list, watch our video on YouTube, or discuss Kuzzle on Discord, the community and the core team will be there to help you.