You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enhance custom conflict resolution documentation continued (#305)
* Enhance custom conflict resolution documentation with detailed strategies and examples
* Update custom conflict resolution documentation with new strategy for cumulative operations and improved descriptions
* Refactor custom conflict resolution documentation to improve clarity and consistency. Updated variable names for better understanding and adjusted SQL queries for accuracy in user context.
* Update custom conflict resolution documentation for clarity and completeness. Corrected typos, refined descriptions, and added a new section on collaborative editing without CRDTs, referencing PowerSync for enhanced user guidance.
Copy file name to clipboardExpand all lines: usage/lifecycle-maintenance/handling-update-conflicts/custom-conflict-resolution.mdx
+6-3Lines changed: 6 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,7 +89,7 @@ async uploadData(database) {
89
89
```
90
90
91
91
<Warning>
92
-
The following structure is only received by the backend if the transactions are not mutated in your clients`uploadData` function
92
+
The following structure is only received by the backend if the transactions are not mutated in your client's`uploadData` function
93
93
</Warning>
94
94
95
95
**Backend API receives:**
@@ -119,7 +119,7 @@ Operations are **idempotent** - your backend may receive the same operation mult
119
119
120
120
## Implementation Examples
121
121
122
-
The following examples demonstrate the core logic and patterns for implementing conflict resolution strategies. All client-side code is written for React/Web applications, backend examples use Node.js, and database queries target PostgreSQL. While these examples should work as-is, they're intended as reference implementations, focus on understanding the underlying patterns and adapt them to your specific stack and requirements.
122
+
The following examples demonstrate the core logic and patterns for implementing conflict resolution strategies. All client-side code is written for React/Web applications, backend examples use Node.js, and database queries target Postgres. While these examples should work as-is, they're intended as reference implementations, focus on understanding the underlying patterns and adapt them to your specific stack and requirements.
123
123
124
124
---
125
125
@@ -1168,4 +1168,7 @@ If batch processing fails midway, how do you recover? Use database transactions
1168
1168
Track how often conflicts occur and why. This data helps you improve UX or adjust resolution strategies.
1169
1169
1170
1170
**Leverage CRDTs for collaborative docs:**
1171
-
For scenarios with real-time collaboration, consider CRDTs to automatically handle concurrent edits. For information on CRDTs, see [separate guide](/usage/use-case-examples/crdts).
1171
+
For scenarios with real-time collaboration, consider CRDTs to automatically handle concurrent edits. For information on CRDTs, see [our separate guide](/usage/use-case-examples/crdts).
1172
+
1173
+
**Collaborative editing without using CRDTs:**
1174
+
You can use PowerSync for collaborative text editing without the complexity of CRDTs. See Matthew Weidner's blog post on [collaborative text editing using PowerSync](https://www.powersync.com/blog/collaborative-text-editing-over-powersync).
0 commit comments