amplify-category-data
v1.0.14
Published
[![Contributors][contributors-shield]][contributors-url] [![Forks][forks-shield]][forks-url] [![Stargazers][stars-shield]][stars-url] [![Issues][issues-shield]][issues-url] [![License][license-shield]][license-url]
Downloads
3
Readme
WARNING: This plugin is in alpha, and may undergo backwards incompatible changes.
Table of Contents
About The Project
Amplify is great at replicating environments- but a database without data is a lonely place.
This project aims to automate the process of seeding, importing, and managing data for Amplify projects.
The first use case targets importing CSV files into DynamoDB.
I evaluated the different approaches, determined which one was the most cost-effective and performant, and distilled it into a simple plugin for you to use in your Amplify project.
Built With
Getting Started
To add this plugin to your Amplify project, follow these simple steps.
Prerequisites
Installation
- Install the plugin from npm
npm install -g amplify-category-data
- Add the plugin to your project
amplify plugin add amplify-category-data
Usage
Adding the resources
Add the data import resources to your amplify backend directory with:
amplify data add
amplify push
Uploading CSV to DynamoDB
To import data into DynamoDB you first need csv files to import. To get a file, export one or more DynamoDB tables to csv files from the AWS console. (Note: This method only exports up to 100 records)
Once exported, place them into a single directory on your file system.
Now simply use the AWS S3 console or aws-cli
tool, and upload csv files to your newly created S3 bucket.
The name of each csv file will determine which DynamoDB table it is uploaded to.
For example...
Categories-gkcm6todfzh5tlpgntm3lyrrgu-dev.csv
uploads to DynamoDB table: Categories-gkcm6todfzh5tlpgntm3lyrrgu-dev
(Optional) If you exported CSV files from the AWS console, you can use amplify data preprocess
to quickly format your csv file headers and filenames.
Done! Your DynamoDB tables now are seeded with data. 🎉
Uploading DynamoDB Records (JSON) to DynamoDB
Coming soon...
Uploading raw JSON to DynamoDB
Coming soon...
Roadmap
The short term goal is to reduce the amount of manual steps required for a CSV import workflow.
See the Github Project Roadmap for a list of proposed improvements.
Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the ISC License. See LICENSE
for more information.
Contact
Twitter - @lordrozar