Comments (7)
Not yet, @clarkd. But you can just run npm install jeremydaly/dynamodb-toolbox#v0.2
to install v0.2 as a dependency.
from dynamodb-toolbox.
Queries are now supported on the v0.2 branch.
from dynamodb-toolbox.
@cameroncf, this is great work! There is a lot to unpack here, but my overall goals for this library include mapping multiple entities to a single table design, and enabling access patterns through the use of config-based mappings (all with caveat that I don't want this to be an ORM). However, using GSIs and encapsulating/automating known patterns for both read and write scenarios, absolutely have to exist.
I really like this idea of interpolating (if you'd call it that) queries, by looking at the model to assume access patterns. I was thinking more along the lines of defining/naming access patterns manually, e.g. Employee.getByEmail('[email protected]')
. The thought was that you could build out these access patterns and provide them to developers through your data abstraction layer. There would need to be (I think) some basic things out of the box, though. And your idea could definitely be one of those things.
I'm envisioning the "write" process having more tools for index manipulation as well, because there needs to be an easier way to correctly assemble GSI pks and sks that's based on the input.
Thanks again for this! I'll definitely be incorporating these ideas into the next version.
Jeremy
from dynamodb-toolbox.
@jeremydaly - Just discovered your v0.2 branch, which looks to be a start at some additional ideas. I'm still digesting but really like this tool so far. Thanks for all the hard work on it!
from dynamodb-toolbox.
FYI, queries have been implemented in v0.2 as a high level abstraction. This allows for fast and easy query creation, which should be a building block for adding something more advanced like your above proposal. Lots of work left to do, but getting closer.
from dynamodb-toolbox.
Is 0.2 available on NPM or anywhere? I realise it's not quite there yet but would good to experiment with...
from dynamodb-toolbox.
Thanks - will take a look!
from dynamodb-toolbox.
Related Issues (20)
- Type inference for query responses with multiple entities HOT 3
- V1 Migration BatchGetCommand type mismatch HOT 5
- Suggestion: date() type HOT 3
- DeleteItemCommand getting empty input for computedKey HOT 4
- Cannot define index with only `partitionKey` in v1.1 HOT 3
- Application built with esbuild possibly broken after `experimentalDecorators` was activated HOT 4
- $add signature for Sets not matching documentation HOT 2
- EQ operator missing from Range Conditions HOT 2
- Unable to match expression attribute path with schema HOT 2
- Suggestion: Allow enums on enum type HOT 2
- Link should apply for put and update by default HOT 1
- Unable to update Map item for optional Map HOT 3
- Extending v1 Entity HOT 3
- `EntityAction` is missing from the global export (v1) HOT 1
- Invalid attribute detected while formatting HOT 5
- UpdateItemCommand seems to be successful but there are no changes in the DB HOT 6
- Issue with the typing for the query / scan `filters` HOT 2
- Update item that does exists in the db HOT 4
- computeKey and prefix HOT 2
- `updateLink` typing is confusing to use HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dynamodb-toolbox.