Draft
Conversation
Add comprehensive file synchronization CLI project using LiveStore and Effect. Features planned: - Bidirectional file sync between directories - One-time sync and continuous watch modes - Conflict detection and resolution - Event sourcing with full audit trail - User vs app change differentiation - Cross-platform file system monitoring Project structure: - Complete design documentation in PLAN.md - TypeScript CLI with Effect and LiveStore integration - Service architecture for FileWatcher, SyncEngine, ConflictResolver - Placeholder implementations with detailed TODOs - Proper package.json with dependencies and build scripts This establishes the foundation for implementing a sophisticated file sync system that demonstrates advanced LiveStore patterns and Effect usage. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Add file-sync project dependencies to pnpm lockfile to resolve CI issues. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Add file-sync project to tsconfig.examples.json references - Fix TypeScript module configuration (ESNext -> NodeNext) - Fix string arithmetic error in status command - Remove invalid summary property from CLI configuration This ensures the file-sync project is included in the overall TypeScript build process and compiles without errors. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
|
This is fantastic, I hope it gets finished 🙏 |
Collaborator
Author
|
Heads-up that this PR overlaps with the roadmap item in #352, which tracks supporting multiple state targets beyond SQLite. Instead of hand-rolling file synchronization logic here, we could treat the file system itself as another state target: LiveStore would materialize directly into the local tree just like it already does with SQLite. Once that adapter exists, the example could be drastically cleaner because we would just compose a new 'State.Filesystem' target rather than wedging file I/O into the example project.\n\n_Comment added via Conductor assistant on behalf of @schickling._ |
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
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.
Summary
Add comprehensive file synchronization CLI project using LiveStore and Effect as a new example in
examples/file-sync/.syncandwatchmodesWhat's Included
📋 Comprehensive Design Plan
🏗️ Project Foundation
🎯 LiveStore Integration
Architecture Highlights
Event Sourcing Design
FileDetected,FileModified,FileDeleted,FileMovedSyncIntent,SyncCompleted,SyncFailedConflictDetected,ConflictResolvedKey Features Planned
Implementation Status
Files Added
Test Plan
This PR establishes the foundation. Future PRs will add:
Learning Value
This example demonstrates:
The project serves as both a useful file sync tool and a comprehensive reference for building complex LiveStore applications.
📚 Next Steps: Review the PLAN.md for technical details, then begin Phase 2 implementation of the event schema and state management.