♻ Enable DynamoDB's time-to-live feature to auto-delete old entries in your AWS Amplify API!
graphql-ttl-transformer
Installation
npm install --save graphql-ttl-transformer
How to use
Setup custom transformer
Edit amplify/backend/api/<YOUR_API>/transform.conf.json
and append "graphql-ttl-transformer"
to the transformers
field.
"transformers": [
"graphql-ttl-transformer"
]
Use @ttl directive
Append @ttl
to target fields.
type ExpiringChatMessage @model {
id: ID!
message: String
expirationUnixTime: AWSTimestamp! @ttl
}
It is important that the field you use the directive is of type AWSTimestamp
(recommended) or Int
, as the expiration timestamp must be in Unix time format.
🦸
Contribute Contributions are more than welcome! I love how AWS Amplify helps us developers building great apps in a short time. That's why I'd like to give back with contributions like this. If you feel the same and would like to join me in this project it would be awesome to get in touch!
Please feel free to create, comment and of course solve some of the issues. To get started you can also go for the easier issues marked with the good first issue
label if you like.
Development
- It is important to always make sure the version of the installed
graphql
dependency matches thegraphql
version thegraphql-transformer-core
depends on.
License
The MIT License
Credits
The graphql-ttl-transformer library is maintained and sponsored by the Swiss web and mobile app development company Florian Gyger Software.
If this library saved you some time and money please consider sponsoring me, so I can build more libraries for free and actively maintain them for you. Thank you