Open Collective
Open Collective

Yorkie

Building an open source document store for building collaborative editing applications.

Contribute


Become a financial contributor.

Financial Contributions

Recurring contribution
Backer

Become a backer for $5.00 per month and support us

Starts at$5 USD / month

Latest activity by


Recurring contribution
Sponsor

Become a sponsor for $100.00 per month and support us

Starts at$100 USD / month

Custom contribution
Donation
Make a custom one-time or recurring contribution.

Latest activity by


+ 3

Top financial contributors

Individuals

1
rhio kim

$115 USD since Sep 2020

2
Soeun Lee

$115 USD since Jan 2021

3
CHOI HEEJAE

$30 USD since Dec 2020

4
Jinho Park

$20 USD since Oct 2022

5
Youngteac Hong

$3 USD since May 2020

Organizations

1
ProtoPie

$87,500 USD since Jul 2020

Yorkie is all of us

Our contributors 8

Thank you for supporting Yorkie.

Youngteac Hong

Admin

$3 USD

ProtoPie

$87,500 USD

rhio kim

backer

$115 USD

Soeun Lee

backer

$115 USD

CHOI HEEJAE

$30 USD

Nice project!

Jinho Park

backer

$20 USD

Budget


Transparent and open finances.

Monthly financial contribution to Yorkie (backer)

Credit from Jinho Park to Yorkie

+$10.00USD
Completed
Contribution #583819
Monthly financial contribution to Yorkie (backer)

Credit from Soeun Lee to Yorkie

+$5.00USD
Completed
Contribution #125147
Monthly financial contribution to Yorkie (backer)

Credit from Soeun Lee to Yorkie

+$5.00USD
Completed
Contribution #125147
$
Today’s balance

$69,842.14 USD

Total raised

$75,558.42 USD

Total disbursed

$5,716.28 USD

Estimated annual budget

$27,112.60 USD

About


Yorkie is an open-source document store for building collaborative editing applications. Yorkie provides the SDK, Server, and Database to eliminate the tedious work, can be operational and can use the services just out-of-box. Yorkie will take care of the collaborative features while you focus on your direct services.
 Client "A" (Go)                 Agent                        Mongo DB
┌───────────────────┐           ┌────────────────────────┐   ┌───────────┐
│  Document "D-1"   │◄─Changes─►│  Collection "C-1"      │   │ Changes   │
│  { a: 1, b: {} }  │           │ ┌───────────────────┐  │◄─►│ Snapshots │
└───────────────────┘           │ │  Document "D-1"   │  │   └───────────┘
 Client "B" (JS)                │ │  { a: 2, b: {} }  │  │
┌───────────────────┐           │ │                   │  │
│  Document "D-1"   │◄─Changes─►│ │  Document "D-2"   │  │
│  { a: 2, b: {} }  │           │ │  { a: 3, b: {} }  │  │
└───────────────────┘           │ └───────────────────┘  │
 Client "C" (Admin)             │                        │
┌────────────────────┐          └────────────────────────┘
│  Query "Q-1"       │               ▲
│ db[c-1].find({a:2})├─MongoDB Query─┘
└────────────────────┘

  • Clients can have a replica of the document representing an application model locally on several devices.
  • Each client can independently update the document on their local device, even while offline.
  • When a network connection is available, Yorkie figures out which changes need to be synced from one device to another, and brings them into the same state.
  • If the document was changed concurrently on different devices, Yorkie automatically syncs the changes, so that every replica ends up in the same state with resolving conflict.

Our team