Skip to content

Commit 5d86975

Browse files
authored
Merge pull request #88 from objectstack-ai/copilot/add-common-drivers
2 parents db4ab46 + 59ee37e commit 5d86975

15 files changed

Lines changed: 3401 additions & 600 deletions

File tree

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Changelog
2+
3+
All notable changes to the LocalStorage Driver for ObjectQL will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [0.1.0] - 2026-01-15
9+
10+
### Added
11+
- Initial release of LocalStorage Driver
12+
- Full implementation of ObjectQL Driver interface
13+
- Browser localStorage persistence
14+
- Automatic JSON serialization/deserialization
15+
- Namespace support to avoid key conflicts
16+
- Storage quota error handling
17+
- Complete query support (filters, sorting, pagination)
18+
- Bulk operations (createMany, updateMany, deleteMany)
19+
- Distinct value queries
20+
- Initial data loading
21+
- Strict mode for error handling
22+
- Comprehensive test suite (31 tests)
23+
- Full documentation and README
24+
- Support for all ObjectQL query operators:
25+
- Comparison: =, !=, >, >=, <, <=
26+
- Set: in, nin
27+
- String: contains, startswith, endswith
28+
- Range: between
29+
- Logical: and, or
30+
- Utility methods (clear, getSize)
31+
- Custom storage support for testing
32+
- TypeScript type definitions
33+
34+
### Features
35+
- ✅ Production-ready for browser-based applications
36+
- ✅ Data persists across page refreshes
37+
- ✅ Works in all modern browsers
38+
- ✅ Namespace isolation for multi-app scenarios
39+
- ✅ Graceful quota exceeded handling
40+
- ✅ Zero external dependencies
41+
42+
### Use Cases
43+
- Progressive Web Apps (PWAs)
44+
- Client-side web applications
45+
- Browser extensions
46+
- User preference storage
47+
- Offline-first applications
48+
- Prototyping without backend
49+
50+
### Performance
51+
- Create: O(1)
52+
- Read by ID: O(1)
53+
- Update: O(1)
54+
- Delete: O(1)
55+
- Find/Query: O(n)
56+
- Count: O(n)
57+
- Sort: O(n log n)
58+
59+
### Storage
60+
- Key format: `{namespace}:{objectName}:{id}`
61+
- Default namespace: `objectql`
62+
- Typical browser limit: 5-10MB per origin
63+
- Automatic JSON serialization
64+
65+
### Documentation
66+
- Comprehensive README with examples
67+
- API reference
68+
- Configuration guide
69+
- Storage management guide
70+
- Browser compatibility information
71+
- Migration guide
72+
- Best practices
73+
- Troubleshooting section
74+
75+
[0.1.0]: https://github.com/objectstack-ai/objectql/releases/tag/%40objectql/driver-localstorage%400.1.0

0 commit comments

Comments
 (0)