Automating Vintara & Co.'s Vintage Art Sales on Etsy

CLIENT

Vintara & Co.
London, UK

TECHNOLOGIES

AWS CDK (Cloud Development Kit)
AWS Step Functions
AWS S3

SERVICES

Consultation and Strategy Development
Custom Implementation Services
Ongoing Maintenance and Support

DATE

Jan 24, 2024

Automating Vintara & Co.'s Vintage Art Sales on Etsy

Automating Etsy Product Listings with AWS Serverless for Vintara and Co.

Preface

This portfolio piece outlines the automated system developed for Vintara and Co., an Etsy store specialising in vintage art. The solution transforms single images into complete Etsy product listings automatically, significantly enhancing operational efficiency and scalability. The tech stack used includes AWS CDK, AWS Step Functions, AWS Lambda, AWS DynamoDB, TypeScript, Node.js, OAuth 2.0, Claid API, OpenAI's ChatGPT API, and Etsy's API.

Introduction

As a freelance senior software developer, I designed and implemented an advanced automated solution for Vintara and Co., transforming their labour-intensive Etsy product listing process. Leveraging AWS serverless technologies, I streamlined the workflow, reducing manual interventions and enabling rapid scaling.

Project Overview

Vintara and Co. faced challenges with their manual Etsy listing process, hindering their growth. My role was to create a serverless automation system using AWS, managing end-to-end workflows from image processing to product listing.

Technical Challenges and Solutions

Decoupling Services to Prevent API Timeout

A key challenge was handling API dependencies without risking timeouts. Implementing AWS Step Functions allowed independent asynchronous checks, especially managing the Claid API's image upscaling status.

Managing Large File Sizes

Optimising AWS Lambda functions for handling high-resolution images required careful memory allocation and performance tuning, ensuring efficient processing without performance degradation.

Workflow Monitoring

AWS Step Functions offered comprehensive monitoring through AWS Console, allowing real-time progress tracking and quick troubleshooting, significantly reducing downtime.

Integration with Etsy API via OAuth 2.0

Secure OAuth 2.0 integration with Etsy's API was implemented, enabling the automated, secure listing of products. This involved developing a secure token management solution ensuring reliable interactions.

Multimedia Production in AWS Lambda

Serverless video creation was a unique challenge, overcome by optimising Lambda resources and implementing efficient media processing techniques.

Technical Implementation

AWS Infrastructure and Architecture

  • AWS CDK: Defined cloud infrastructure programmatically, ensuring consistent and repeatable deployments.
  • AWS S3: Provided secure, scalable storage for both raw and processed images.
  • AWS Lambda: Facilitated serverless computing for image and video processing tasks.
  • AWS DynamoDB: Efficiently managed product listing records, linking images to Etsy IDs.
  • AWS Step Functions: Coordinated complex workflows, ensuring sequential and parallel processing tasks executed seamlessly.

Code Example: Orchestrating AWS Step Functions

The core orchestrating component was a parent Step Function managing subordinate workflows:

const definition = DefinitionBody.fromChainable(
  createUniqueId
    .next(createRecordAndUpscale)
    .next(claidReadinessChecker)
    .next(createProductFiles)
    .next(createMediaStack)
    .next(createEtsyProduct)
    .next(moveCompletedImage)
);

const stateMachine = new StateMachine(this, 'VintaraWorkflow', {
  definitionBody: definition,
  timeout: Duration.minutes(120),
});

This approach ensured clear, maintainable, and scalable orchestration.

Outcomes and Impact

The automated solution delivered substantial operational improvements:

  • Efficiency Boost: Reduced product listing creation time dramatically from hours to minutes.
  • Scalability: Allowed Vintara and Co. to handle significantly higher volumes of products without additional manual effort.
  • Enhanced Reliability: Robust error handling and monitoring reduced operational risks and improved overall reliability.

Conclusion

By leveraging AWS serverless technology, TypeScript, and integrated API services, I provided Vintara and Co. with a robust, scalable, and efficient system. This solution not only streamlined their Etsy product listing process but also positioned them strategically for sustained growth and operational excellence.

Project Images