This document defines a high-level roadmap for Yorkie development and upcoming releases. The features and themes included in each milestone are optimistic in the sense that many do not have clear owners yet. Community and contributor involvement is vital for successfully implementing all desired items for each release. We hope that the items listed below will inspire further engagement from the community to keep Yorkie progressing and shipping exciting and valuable features.
Any dates listed below and the specific issues that will ship in a given milestone are subject to change but should give a general idea of what we are planning. We use the Projects feature in GitHub so look there for the most up-to-date and issue plan.
Yorkie v1.0 focuses on improving the stability of the server and client to make Yorkie more reliable.
- Support ProseMirror #257
- Multi-User Undo/Redo #652
- History API #52
- REST API #677
- Improve UI Workflow #1
- Support batch API for document and presence #442
- Sharding-based cluster mode #472
- Support MongoDB Sharded Cluster #673
- Devtools #688
Yorkie v0.3 should provide APIs in the form of service(PaaS) to make it easier for users to Yorkie.
- Renewal of Homepage
- Dashboard Yorkie House
- Admin API #273
- Multi-tenancy #310
- Mobile SDKs #54
Yorkie v0.2 should be reliably available for services used in production environments.
- Mar: Monitoring #155
- May: Supporting TLS and Auth webhook to secure Yorkie #6
- Jun: Providing Cluster Mode #11
- Oct: Improved Peer Awareness #153
- Nov: Release CodePair
- Dec: Providing MemoryDB for Agent without MongoDB #276
Yorkie's first release version, v0.1, aims to implement the basic features of the document store for building collaborative editing applications.
- Jan: Text datatype for supporting text based collaboration editor #2
- Feb: Realtime event stream #5
- Mar: https://yorkie.dev
- Apr: Change hook
- May: Snapshot to reduce payload #9
- Jun: Garbage collection to clean CRDT meta #3
- Aug:
- Dec: Cleanup such as package dependency cleanup and tests cleanup
- Nov: Start the project with adding basic structure(Agent, Client, Document)
- Dec: JS-SDK(Client, Document) yorkie-js-sdk