-
Notifications
You must be signed in to change notification settings - Fork 7
Extract loro concepts #21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Extracted and reorganized key Loro concepts for better accessibility: High Priority Concepts: - Frontiers: Compact version representation using operation IDs - OpLog and DocState Separation: Architecture split between state and history - Attached/Detached States: Document version state and container association - Operations and Changes: How operations group and form changes Medium Priority Concepts: - Event Graph Walker: Novel CRDT algorithm using simple indices - Cursor and Stable Positions: Position references surviving concurrent edits - Import Status: Tracking successful imports and pending operations - Version Representations: Comparison between Version Vectors and Frontiers Low Priority Concepts: - Shallow Snapshots: Partial history snapshots with content redaction - PeerID Management: ID assignment and conflict avoidance strategies - Transaction Model: Operation bundling for event emission Changes made: - Created 11 new concept documents with beginner-friendly explanations - Set up redirects from original locations in advanced section - Updated navigation structure in _meta.js - Migrated relevant images and diagrams - Made documentation more progressive, starting simple and building complexity 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Added redirects in next.config.mjs for moved concept pages - Removed old entries from advanced/_meta.js - Deleted the old moved files from advanced folder - Cleaned up shallow-imgs directory from advanced folder This ensures proper URL redirects and avoids duplicate content. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Reduced concept documentation by 56% (4,228 → 1,852 lines) to make them quick references: Version-related pages: - frontiers.mdx: 455 → 92 lines - focused on definition and use cases - version_representations.mdx: 600 → 170 lines - comparison and decision guide - Eliminated duplication with version_deep_dive.mdx Other concept pages simplified: - peerid_management.mdx: 659 → 144 lines - transaction_model.mdx: 491 → 108 lines - attached_detached.mdx: 459 → 129 lines - import_status.mdx: 434 → 107 lines - cursor_stable_positions.mdx: 359 → 118 lines - shallow_snapshots.mdx: 346 → 139 lines - operations_changes.mdx: 323 → 116 lines - oplog_docstate.mdx: 305 → 139 lines Each page now follows consistent structure: - Quick reference section - Key concepts with bullet points - Simple code example - Brief best practices - Links to detailed documentation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
…entation Added important clarifications to the Event Graph Walker concept page: - Note at the beginning explaining Loro is heavily inspired by but not strictly implementing Eg-Walker - Updated Implementation section to clarify it's a hybrid approach with Eg-Walker-inspired optimizations - Modified conclusion to emphasize the inspiration relationship This ensures readers understand that Loro incorporates Eg-Walker's key insights and achieves similar properties through inspiration rather than being a pure Eg-Walker implementation. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Added a clear explanation of Frontiers' key limitation: - When dealing with unknown operations, Frontiers cannot determine the complete set of included operation IDs - Extended the family tree analogy to illustrate this limitation - Contrasted with Version Vectors which explicitly list all operations - Added practical example showing the difference - Explained why this makes Frontiers best for local checkpoints and Version Vectors better for synchronization This helps users understand the trade-offs between the two version representation methods. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Removed the Git comparison because Git is fundamentally snapshot-based, not operation-based. OpLog is now correctly described as a sequence of events/operations that compose the document history. This provides a more accurate understanding of Loro's architecture. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Added important details about how transactions work: - Local operations are pending by default until committed - Operations like import, checkout, and export trigger implicit commits - Explicit examples showing pending operations and implicit commit behavior - Updated best practices to mention being aware of implicit commits This clarifies the transaction behavior that users need to understand when working with Loro. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
…or concept - Deleted version_representations.mdx as it was redundant - Created dedicated version_vector.mdx focusing specifically on Version Vectors - Updated version.mdx tutorial to link to both version_vector and frontiers concepts - Updated _meta.js navigation to reflect the change This provides clearer separation between the two version concepts (Version Vectors and Frontiers) instead of combining them in one document. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Removed the family tree analogy as it was making the concept more confusing rather than clarifying it. The documentation now focuses on clear technical explanations without potentially misleading metaphors. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Fixed 15 broken links across 8 concept documentation files: - Replaced non-existent ../user-guide/* paths with ../tutorial/* - Fixed ../containers/text to ../tutorial/text - Updated version_representations references to version_vector - Corrected collaborative-editing links to cursor tutorial - Fixed export-import and version-control links All relative links in concept pages now point to valid documentation files. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Completely rewrote the "When Not to Use CRDTs" documentation to be clearer and more accessible: - Added concrete examples with code for each problem scenario - Structured content with clear problem → explanation → solution pattern - Included practical hybrid approaches and patterns - Added decision framework with simple yes/no questions - Used visual indicators (✅/❌) for quick scanning - Provided real-world examples (booking systems, code editing, financial transactions) - Maintained professional tone while making content more approachable The document now clearly explains CRDT limitations through practical examples rather than abstract descriptions, making it easier for developers to understand when CRDTs are and aren't appropriate. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Scan and summarize all documentation sections - Include core features, architecture, and use cases - Add performance benchmarks and recent updates - Provide getting started guide and code examples 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Remove incorrectly placed /llms.txt file - Update public/llms.txt with concise, structured content - Add Core Features section for quick overview - Improve organization and clarity of documentation links - Follow llmstxt.org best practices for LLM-friendly content 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Map and process all documentation files in the repository - Include links to all tutorials (17 files) with descriptions - Include links to all concepts (15 files) with explanations - Include links to all advanced topics (6 files) with use cases - Include links to all performance benchmarks (3 files) - Include links to all blog posts (5 files) with summaries - Include links to all changelog entries (8 versions) - Add Quick Links section for main resources - Organize content following llmstxt.org best practices - Structure content hierarchically for easy LLM navigation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.