Road Map: Dexie Cloud

Dexie Cloud is now publicly released and can be used in production apps.

For backlog, future and current work, see https://github.com/orgs/dexie/projects.


Old Milestones:

Milestone 1 - Private beta

The private beta was released in June 2021 and included the following features.

  • Initial documentation on dexie.org
  • CLI: “npx dexie-cloud create”
  • dexie-cloud-addon
  • Dexie Cloud Server published on https://dexie.cloud
  • Dexie Cloud CLI
  • Complete authentication flow using email OTP
  • Complete Sync flow
  • DB management access control
  • Token endpoint for custom authentication
  • Service Worker with periodic sync
  • A workind sample app

Milestone 2 - Consistent Sync

This milestone was finalized in September 2021

  • ACID atomicity in sync requests
  • Full consistency when syncing Collection.modify() and Collection.delete() operations.
  • Respect CORS origins
  • Fully implemented CLI tool
  • Improved performance in WebSocket reactivity
  • Bug fixes

Milestone 3 - Fully functional Access Control

This milestone was released December 19, 2021.

Another 150 people from the wait list are now able to use it (update on december 21).

  • Possible to create realms and respect permissions on sync and maintain realm consistency.
  • Support compound primary keys
  • New React hook usePermission() to disable unpermitted fields and buttons.
  • New permissions helper for non-react apps (db.cloud.permissions(db, table, obj), can.add('members'), can.update('done'), can.delete())
  • Improve migration framework (server side on dexie cloud)
  • Add new migration to reflect updated model
  • Decide solution for binding an object to a dedicated realm
  • Support switching object between being shared (connected to realm) and private (connected to private realm) back and forth in a consistent manner.
  • Implement invite route on dexie cloud server (endpoint for accepting / rejecting invites)
  • Send out email invites when inviting people to a realm
  • Add demo users to sample app
  • Implement todo-list sharing on sample app
  • Support for private IDs (solution for per-user singletons)
  • Support for generating tied realm IDs (consistency of realms that are tied to an entity)
  • db.cloud.invites - an observable of invites
  • Tests
  • Run migration on production cloud and publish new version
  • Publish new version of sample todo app
  • Allowed another 150 people from the wait list!

Milestone 4 - Role support + Updated Documentation

Target release date: Jan 10, 2022. May 31, 2022.

  • Respect global roles
  • Allow importing global roles in JSON format for dexie-cloud import CLI.
  • Add sharing support with roles to the sample app
  • Update Authentication docs: signed refresh tokens
  • Updated docs explaining that ‘@’ keys are optional.
  • Docs: Explain Universally consistent modify() operations
  • Document all options in db.cloud.configure()
  • Document db.cloud properties and how to use them
  • Document service worker support
  • Update docs for unauthorized use case
  • Document REST API: import / export
  • Document how to tie an object to a Realm

Milestone 5 - Increase number of beta testers

  • Set up monitoring, alarms and redundancy
  • Approve more testers
  • Start sending out waitlist confirmation emails
  • Collect new requirements
  • New REST API
  • Document REST API

Milestone 6 - Commercialization

  • Subscription manager
  • Stripe Integration
  • Implement monthly cost limit setting
  • Implement end-user trial period for customer apps
  • Feature complete
  • The new Subscription model applied
  • Extend all customers’ eval users to guarantee full service until official release date.
  • Production level service for paying customers
  • Possible to manage databases, users and evaluation policy using Dexie Cloud Manager
  • Possible to purchase Dexie Cloud Production using Dexie Cloud Manager

Milestone 7 - Public Release

  • Release new version (prod version) of the software to On-Prem customers
  • Dexie Cloud Manager officially released
  • Communicate the release in a newsletter to everyone in the waitlist
  • Marketing campaign launched
  • “beta” removed from web site
  • Waitlist closed
  • Anyone can create databases and use the Free version
  • Anyone can purchase subscriptions

Table of Contents