Repository navigation
Expand file tree
/
Copy pathdata.js
More file actions
73 lines (72 loc) · 2.06 KB
/
Copy pathdata.js
File metadata and controls
73 lines (72 loc) · 2.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// @ts-check
import { LandscapeSchema } from '@localfirstfm/landscape-schema'
export const data = LandscapeSchema.make({
Version: 1,
Id: 'loro',
Name: 'Loro',
Logo: {
Light: 'https://github.com/loro-dev/loro/blob/main/docs/Loro.svg',
Dark: 'https://github.com/loro-dev/loro/blob/main/docs/Loro.svg',
},
Description: 'Make your JSON data collaborative and version-controlled with CRDTs',
MaturityLevel: 'Production-Ready',
Website: 'https://loro.dev',
GitHub: 'https://github.com/loro-dev/loro',
GetStarted: 'https://loro.dev/docs/tutorial/get_started',
Deployment: ['Self-hosted'],
License: 'MIT',
InitialReleaseDate: new Date('2023-11-13'),
AppTarget: {
Platform: { data: ['Browser', 'Node', 'iOS', 'macOS', 'WASM', 'Linux'] },
LanguageSDK: { data: ['typescript', 'javascript', 'Rust', 'Swift', 'Python'] },
ClientBundleSize: { data: '~900 kB' },
},
Networking: {
Topology: { data: 'P2P' },
Protocol: { data: ['WebSockets', 'HTTP'] },
},
ServerSideData: {
PersistenceMechanism: { data: ['Custom'] },
DataModelParadigm: { data: 'Document' },
},
ClientSideData: {
QueryAPI: { data: ['Async'] },
LocalRefreshLatency: { data: '~1ms' },
PersistenceMechanism: { data: ['IndexedDB', 'Custom'] },
DataModel: { data: 'Document' },
OfflineReads: { data: 'Full Support' },
OfflineWrites: { data: 'Local conflict resolution' },
DataSize: { data: 'Up to 5-10 MB per document' },
},
SynchronizationStrategy: {
FullOrPartialReplication: { data: ['Full Replication'] },
ConflictHandling: { data: 'Automatic via CRDT' },
WhereResolutionOccurs: { data: 'Client' },
WhatGetsSynced: {
data: {
ClientToClient: 'Ops',
ClientToServer: 'Ops',
ServerToClient: 'Ops',
},
},
Authority: { data: 'Decentralized' },
},
UIRelated:{
RichTextEditing: {
data: 'Yes'
},
Components:{
data: ['ProseMirror', 'CodeMirror']
}
},
DevelopmentWorkflowsDX:{
DebuggingTools:{
data: ['Data Inspector'],
comment: "https://loro.dev/docs/advanced/inspector"
},
TypeSupport:{
data: 'TypeScript',
},
},
UserControlDataOwnership: 'Yes',
})