Skip to content

Commit d6442bf

Browse files
authored
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.
1 parent 4121b37 commit d6442bf

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

usage/lifecycle-maintenance/handling-update-conflicts/custom-conflict-resolution.mdx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ async uploadData(database) {
8989
```
9090

9191
<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
9393
</Warning>
9494

9595
**Backend API receives:**
@@ -119,7 +119,7 @@ Operations are **idempotent** - your backend may receive the same operation mult
119119

120120
## Implementation Examples
121121

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.
123123

124124
---
125125

@@ -1168,4 +1168,7 @@ If batch processing fails midway, how do you recover? Use database transactions
11681168
Track how often conflicts occur and why. This data helps you improve UX or adjust resolution strategies.
11691169
11701170
**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

Comments
 (0)