Skip to content

Commit 1b93b4c

Browse files
Added project status to the main README
1 parent 1da476f commit 1b93b4c

File tree

1 file changed

+48
-1
lines changed

1 file changed

+48
-1
lines changed

README.md

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ A pure-Swift implementation of a database-like persistent store for use in apps
1717
## Quick Links
1818

1919
- [Documentation](https://swiftpackageindex.com/mochidev/CodableDatastore/documentation)
20+
- [Updates on Mastodon](https://mastodon.social/tags/CodableDatastore)
2021

2122
## Installation
2223

@@ -43,7 +44,49 @@ targets: [
4344

4445
`CodableDatastore` is a collection of types that make it easy to interface with large data stores of independent types without loading the entire data store in memory.
4546

46-
### Goals
47+
> **Warning**
48+
> DO NOT USE THIS IN PRODOCUTION PROJECTS. As this project is currently still in its alpha phase, I cannot stress how important it is to not ship anything that relies on this code, or you will experience data loss. There is a chance the underlying model may continue to change day to day, or I will not be able to ever finish it.
49+
> Until then, please enjoy the code as a spectator or play around with it in toy projects to submit feedback!
50+
51+
### Road to 0.1 Betas
52+
53+
As this project matures towards its first beta, a number of features still need to be fleshed out:
54+
- Writing to any part of the datastore
55+
- Loading entries
56+
- Deleting entries
57+
- Keeping track of the number of entries
58+
- Update snapshots to have multiple manifests
59+
- Fleshing out historical edit metadata
60+
- Migrating entries
61+
- Ranged reads
62+
- Observations
63+
64+
The above list will be kept up to date during development and will likely see additions during that process.
65+
66+
### Road to 1.0
67+
68+
Once an initial beta is released, the project will start focussing on the functionality and work listed below:
69+
- Cleaning up old resources in memory
70+
- Cleaning up old resources on disk
71+
- Reversed ranged reads
72+
- Controls for the edit history
73+
- Helper types to use with SwiftUI/Observability/Combine that can make data available on the main actor and filter and stay up to date
74+
- Comprehensive test coverage
75+
- Comprehensive usage guides
76+
- An example app
77+
- A memory persistence useful for testing apps with
78+
- A pre-configured data store tuned to storing pure Data, useful for types like Images
79+
80+
### Beyond 1.0
81+
82+
Once the 1.0 release has been made, it'll be time to start working on additional features:
83+
- Snapshots and Backups
84+
- A companion app to open, inspect, and modify datastores
85+
- Other kinds of persistences, such as a distributed one for multi-server deployments
86+
- Compression and encryption on a per-datastore basis
87+
- External writes to a shared inbox
88+
89+
### Original Goals
4790

4891
<details open>
4992
<summary><strong>Use Codable and Identifiable to as the only requirements for types saved to the data store.</strong></summary>
@@ -185,3 +228,7 @@ If you are designing a scalable system that runs multiple processes, consider se
185228
Contribution is welcome! Please take a look at the issues already available, or start a new discussion to propose a new feature. Although guarantees can't be made regarding feature requests, PRs that fit within the goals of the project and that have been discussed beforehand are more than welcome!
186229

187230
Please make sure that all submissions have clean commit histories, are well documented, and thoroughly tested. **Please rebase your PR** before submission rather than merge in `main`. Linear histories are required, so merge commits in PRs will not be accepted.
231+
232+
## Support
233+
234+
To support this project, consider following [@dimitribouniol](https://mastodon.social/@dimitribouniol) on Mastodon, listening to Spencer and Dimitri on [Code Completion](https://mastodon.social/@codecompletion), or downloading Dimitri's wife Linh's app, [Not Phở](https://notpho.app/).

0 commit comments

Comments
 (0)