Skip to content
Vasern is a fast, lightweight and open source data storage for React Native
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode update website Oct 22, 2018
android Updated gradle plugin to 3.3.1 and removed specified buildToolsVersion Feb 21, 2019
docs Replace obsolete compile with implementation when linking manually Feb 16, 2019
examples/vasern-todo update merge dependency Feb 16, 2019
website Add link to Feb 21, 2019
.babelrc working on tests Oct 24, 2018
.codeclimate.yml add codeclimate Oct 24, 2018
.eslintignore update configuration for testing Oct 24, 2018
.eslintrc fix creating Document undefined (using schema object) Oct 24, 2018
.flowconfig code quality check Oct 22, 2018
.gitignore Add link to Feb 21, 2019
.npmignore Add link to Feb 21, 2019
Icon improve performance on Android platform Oct 25, 2018
LICENSE clean up and prepare for ios alpha release Oct 14, 2018
babel.config.js adding basic tests Oct 24, 2018
package-lock.json Add contributor and pump npm version Feb 21, 2019
package.json Add contributor and pump npm version Feb 21, 2019 Pump npm version Feb 16, 2019
tsconfig.json Turn off "Cannot write file .." Feb 16, 2019

Vasern Logo

NPM CI Status GitHub Issues Supported Platforms Join Slack

Vasern is a fast and open source data storage for React Native.

View Development Roadmap. Read about beta release announcement

Table of Contents:

For more details, visit Vasern Documentation

What is Vasern?

Vasern is a data storage for React Native that underneath is linked-consistent key-value stores. Its data engine is built natively to achieve native performance. Our goal is to develop an open source, developer friendly end-to-end database solution. Sync server - vasern-server is under development.

A snipped code shows how Vasern works

import Vasern from 'vasern';

// Define Todos application schema
const VasernDB = new Vasern({ 
  schemas: [{
    name: "Users",
    props: {
      fname: "string",
      lname: "string"
    name: "Todos",
    props: {
      name: "string",
      completed: "boolean",
      assignTo: "#Users"

// Add listener whenever Todos has a change (loaded/insert/update/delete)
VasernDB.Todos.onChange(() => {

  // Get all todo items with "completed" is "false"
  const todoList = VasernDB.Todos.filter({ completed: false });
  // Update state
  this.setState({ data: });

Development Status

Vasern beta is available on iOS and Android. It is being heavily tested to ensure its functionality, data quality and consistency. View Development Roadmap

Most of APIs won’t be changed in the near future. A stable release of Vasern will be announced within a month from now unless there are major issues. After the stable release, Vasern will continue to be maintained and improved.

Join us on Slack for any quick update and discusion.

Getting Started


Help and Feedback

The more concise and informative, the better it helps us to understand your concern.


Vasern is lucky to have support from our contributors, thanks to:

Contribute to Vasern

Your contributions are welcome and highly appreciated. At the moment, you can create an issue with (1) Goal and (2) Details of your code.

You can’t perform that action at this time.