An open API service providing repository metadata for many open source software ecosystems.

Package Usage: go: github.com/fogfish/dynamo/v2

Package dynamo implements a simple key-value abstraction to store algebraic data types with AWS services: ↣ AWS DynamoDB ↣ AWS S3 The library encourages developers to use Golang struct to define domain models, write correct, maintainable code. Using the library, the application can achieve the ideal data model that would require a single request to DynamoDB and model one-to-one, one-to-many and even many-to-many relations. The library uses generic programming style to implement actual storage I/O, while expose external domain object as `[T dynamo.Thing]` with implicit conversion back and forth between a concrete struct(s). Essentially, it implement a following generic key-value trait to access domain objects. The library AWS Go SDK under the hood Define an application domain model using product types, which are strongly expressed by struct in Go. Make sure that defined type implements dynamo.Thing interface for identity Use DynamoDB attributes from AWS Go SDK to specify marshalling rules https://docs.aws.amazon.com/sdk-for-go/api/service/dynamodb/dynamodbattribute. Create an implicit I/O endpoint to Dynamo DB table Creates a new entity, or replaces an old entity with a new value. Lookup the struct using Get. This function takes input structure as key and return a new copy upon the completion. The only requirement - ID has to be defined. Remove the entity Apply a partial update using Update function. This function takes a partially defined structure, patches the instance at storage and returns remaining attributes. Use following DynamoDB schema: See README at https://github.com/fogfish/dynamo
11 versions
Latest release: about 2 years ago

View more package details: https://packages.ecosyste.ms/registries/proxy.golang.org/packages/github.com/fogfish/dynamo/v2

View more repository details: http://repos.ecosyste.ms/hosts/GitHub/repositories/fogfish%2Fdynamo

Dependent Repos 1

kshard/spock

Size: 107 KB - Last synced: almost 2 years ago - Pushed: almost 2 years ago