|  | @@ -1,8 +1,6 @@
 | 
											
												
													
														|  |  # EZ DB
 |  |  # EZ DB
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -This package provides simple interfaces for working with basic key-value storage in your Go application.
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -**EZ DB is not a database unto itself.** If you want more control or features, just use the appropriate database software and connector for your needs.
 |  | 
 | 
											
												
													
														|  | 
 |  | +This package provides simple interfaces for working with basic key-value document storage in your Go application.
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  ## System requirements
 |  |  ## System requirements
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -33,22 +31,6 @@ func main() {
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  ```
 |  |  ```
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -In other cases, such as media stores, you may prefer not to specify a document type. This example allows arbitrary bytes to be written:
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -```go
 |  | 
 | 
											
												
													
														|  | -package main
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -import "github.com/annybs/ezdb"
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -var db = ezdb.Memory[[]byte](nil)
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -func main() {
 |  | 
 | 
											
												
													
														|  | -	db.Open()
 |  | 
 | 
											
												
													
														|  | -	db.Put("data", []byte("arbitrary bytes"))
 |  | 
 | 
											
												
													
														|  | -	db.Close()
 |  | 
 | 
											
												
													
														|  | -}
 |  | 
 | 
											
												
													
														|  | -```
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |  ## Marshaling data
 |  |  ## Marshaling data
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  Some database backends require marshaling and unmarshaling data. The `DocumentMarshaler[T1, T2]` interface allows you to use whatever marshaler suits your needs or the requirements of your chosen database.
 |  |  Some database backends require marshaling and unmarshaling data. The `DocumentMarshaler[T1, T2]` interface allows you to use whatever marshaler suits your needs or the requirements of your chosen database.
 | 
											
										
											
												
													
														|  | @@ -64,6 +46,14 @@ The following databases are included in EZ DB:
 | 
											
												
													
														|  |  - `LevelDB[T]` is [fast key-value storage](https://github.com/google/leveldb) on disk
 |  |  - `LevelDB[T]` is [fast key-value storage](https://github.com/google/leveldb) on disk
 | 
											
												
													
														|  |  - `Memory[T]` is essentially a wrapper for `map[string]T`. It can be provided another Collection to use as a persistence backend
 |  |  - `Memory[T]` is essentially a wrapper for `map[string]T`. It can be provided another Collection to use as a persistence backend
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +## Limitations
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +EZ DB is intended for simple document storage and can work with any addressable data represented as `T` in your Go app.
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +This makes it unsuited for working with unaddressable types, such as byte arrays, particularly when a document marshaler is involved.
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +If you want more control beyond what EZ DB offers, it's best to just use the appropriate database software and connector for your needs.
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |  ## License
 |  |  ## License
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  See [LICENSE.md](./LICENSE.md)
 |  |  See [LICENSE.md](./LICENSE.md)
 |