diff --git a/src/components/Diagrams/index.js b/src/components/Diagrams/index.js index daff8ae..2973251 100644 --- a/src/components/Diagrams/index.js +++ b/src/components/Diagrams/index.js @@ -1,12 +1,12 @@ export const Centralized = () => { return ( -
+
-
+
Centralized architecture with one server and three clients
@@ -15,7 +15,7 @@ export const Centralized = () => { export const P2P = () => { return ( -
+
{ export const LongPolling = () => { return ( -
+
{ export const Websockets = () => { return ( -
+
{
@@ -124,7 +124,7 @@ export const WhiteboardConflict = () => { export const RelativeUpdate = () => { return ( -
+
{ export const AbsoluteUpdates = () => { return ( -
+
{ export const NoConflictEdits = () => { return ( -
+
{ export const ConflictEdits = () => { return ( -
+
{ ) } +export const CRDT = () => { + return ( +
+ +
+
+ ) +} + +export const OT = () => { + return ( +
+ +
+
+ ) +} + export const SyncingModel1 = () => { return ( -
+
{ export const SyncingModel3 = () => { return ( -
+
{ export const SyncingModel4 = () => { return ( -
+
{ export const GlobalRooms = () => { return ( -
+
Multiple rooms with different clients
@@ -228,7 +254,7 @@ export const GlobalRooms = () => { export const CloudflareArchitecture = () => { return ( -
+
{ export const StateUpdates = () => { return ( -
+
{ export const DeltaUpdate = () => { return ( -
+
{ export const SnapshotID = () => { return ( -
+
{ export const ON2Messaging = () => { return ( -
+
{ export const ONMessaging = () => { return ( -
+
{ export const Subscriptions = () => { return ( -
+
{ export const DashboardArchitecture = () => { return ( -
+
{ ) } - -/*------------------------------------------*/ - -export const CRDT = () => { - return ( -
- -
-
- ) -} - -export const OT = () => { - return ( -
- -
-
- ) -} diff --git a/src/css/custom.css b/src/css/custom.css index 885a7f0..487999d 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -179,3 +179,17 @@ figcaption { text-align: center; line-height: 1.75rem; } + +.comparison { + margin-top: 3rem; +} + +.todo-list-app { + margin-top: 3rem; + margin-bottom: 3rem; +} + +.analytics { + margin-top: 3rem; + margin-bottom: 3rem; +} diff --git a/src/pages/case-study.mdx b/src/pages/case-study.mdx index e64fecc..44a60c5 100644 --- a/src/pages/case-study.mdx +++ b/src/pages/case-study.mdx @@ -329,7 +329,7 @@ Syncosaurus is a React Javascript client-side SDK with full ready-to-be-deployed Similar to commercial solutions like Liveblocks and Reflect, Syncosaurus exposes a client-side SDK while abstracting the backend logic and handling much of the deployment - the only thing a developer has to do to get the backend deployed is sign up for a Cloudflare account and use our CLI to deploy. However, unlike the commercial solutions, the Syncosaurus framework is free to use and open source so a developer can alter the default backend code if they choose. -
+
@@ -535,7 +535,7 @@ We have prepared a simple todo list application to illustrate the mutator and cl Go ahead and enter some todos into Client 1 and watch them appear on Client 2 after a simulated latency of 1 second: -
+
@@ -557,7 +557,7 @@ After your application is deployed, you can monitor its usage and get help debug The dashboard includes hourly time-series metrics related to errors and usage for each room so you can verify users are able to access and use your application in a bug-free manner. -
+
dashboard screenshot +